*{box-sizing:border-box}body{color:#273129;background:#f7f3e9;margin:0;font-family:Arial,sans-serif}a{color:inherit}.shell{min-height:100vh;padding:0 6vw}.shell nav,.dashboard-shell nav{border-bottom:1px solid #d8dbd2;justify-content:space-between;align-items:center;height:82px;display:flex}.shell nav strong,.dashboard-shell nav strong,.brand{font-size:24px;font-weight:700;text-decoration:none}.nav-actions{align-items:center;gap:22px;display:flex}.nav-actions a{font-size:14px;text-decoration:none}.nav-primary,.cta,.empty-state button,.event-form-card button{cursor:pointer;background:#2a372e;border:0;padding:14px 20px;text-decoration:none;display:inline-block;color:#fff!important}.hero{max-width:1000px;padding:10vh 0 9vh}.eyebrow{letter-spacing:.2em;color:#718074;font-size:10px}.hero h1{letter-spacing:-.065em;margin:22px 0 30px;font:clamp(58px,9vw,116px)/.9 Georgia,serif}.hero h1 em{color:#936c69;font-weight:400}.lead{color:#667168;max-width:620px;font:19px/1.65 Georgia,serif}.cta{margin-top:18px}.steps{grid-template-columns:repeat(3,1fr);padding-bottom:70px;display:grid}.steps article{background:#e8ece4;border-right:1px solid #d0d6cd;min-height:200px;padding:30px}.steps b{color:#7d897f;font:10px monospace}.steps h2{margin-top:32px;font:27px Georgia}.steps p{color:#6d776f;font-size:13px;line-height:1.6}.auth-shell{background:linear-gradient(135deg,#f7f3e9 60%,#e8ece4);min-height:100vh;padding:34px 6vw}.auth-card{background:#fff;max-width:460px;margin:9vh auto;padding:42px;box-shadow:0 20px 70px #26382c18}.auth-card h1,.dashboard-head h1,.event-form-card h1{margin:15px 0 20px;font:42px/1.05 Georgia,serif}.auth-intro{color:#68736b;margin-bottom:26px;font:15px/1.6 Georgia,serif}.google-button{background:#fff;border:1px solid #cfd5ce;justify-content:center;align-items:center;gap:12px;padding:14px 18px;font-size:14px;font-weight:700;text-decoration:none;display:flex}.auth-note{color:#879087;text-align:center;margin:20px 0 0;font-size:11px;line-height:1.5}.dashboard-shell{min-height:100vh;padding:0 6vw 70px}.text-button{cursor:pointer;background:0 0;border:0;text-decoration:underline}.dashboard-head{padding:70px 0 40px}.dashboard-head h1{margin-bottom:12px}.dashboard-head>div>p:last-child{color:#68736b}.dashboard-head-row{justify-content:space-between;align-items:flex-end;gap:30px;display:flex}.empty-state{text-align:center;background:#e8ece4;max-width:760px;padding:60px}.empty-state span{font-size:30px}.empty-state h2{font:30px Georgia,serif}.empty-state p{color:#68736b;margin-bottom:24px}.event-list{gap:14px;max-width:900px;display:grid}.event-card{background:#fff;border:1px solid #e0e2dc;justify-content:space-between;align-items:center;gap:30px;padding:25px 28px;display:flex}.event-card h2{margin:10px 0;font:26px Georgia,serif}.event-card p{color:#68736b;margin:0;font-size:13px}.status-pill{letter-spacing:.15em;color:#53705c;font-size:9px}.event-actions{gap:18px;display:flex}.event-actions a{font-size:13px}.form-page{min-height:100vh;padding:32px 6vw 70px}.form-top{justify-content:space-between;display:flex}.form-top a{font-size:13px;text-decoration:none}.event-form-card{background:#fff;max-width:700px;margin:55px auto;padding:42px}.event-form-card form{gap:20px;margin-top:30px;display:grid}.event-form-card label{gap:8px;font-size:12px;font-weight:700;display:grid}.event-form-card small{color:#7c857e;font-weight:400}.event-form-card input,.event-form-card textarea{resize:vertical;background:#fafaf7;border:1px solid #ccd2cb;padding:14px;font:15px Arial}.field-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-error{color:#9f3f3f;font-size:13px}.guest-page{text-align:center;color:#f7f3e9;background:#26352c;min-height:100vh;padding:35px 20px 80px}.guest-brand{margin:0;font-size:22px;font-weight:700}.guest-event-head{max-width:680px;margin:10vh auto 45px}.guest-page .eyebrow{color:#aebbb0}.guest-page h1{color:#dfc5c1;margin:20px 0 12px;font:clamp(50px,9vw,90px)/1 Georgia,serif}.guest-page h2{font:400 20px Georgia,serif}.guest-date{letter-spacing:.12em;font-size:12px}.guest-message{color:#d6ddd7;max-width:520px;margin:30px auto;font:18px/1.6 Georgia,serif}.recorder{color:#26352c;text-align:left;background:#f7f3e9;border-radius:3px;max-width:600px;margin:0 auto;padding:30px}.guest-form{gap:18px;display:grid}.guest-form label{gap:8px;font-size:12px;font-weight:700;display:grid}.guest-form small{font-weight:400}.guest-form input{background:#fff;border:1px solid #c9d0ca;padding:14px;font-size:16px}.recorder button{color:#fff;cursor:pointer;background:#26352c;border:0;padding:15px 20px;font-weight:700}.camera-wrap,.preview-wrap{position:relative}.camera-wrap video,.preview-wrap video{object-fit:contain;background:#111;border-radius:2px;width:100%;max-height:70vh;display:block}.portrait-hint{text-align:center;color:#667168;margin:0 0 10px;font-size:11px}.recording-badge{color:#fff;background:#111c;padding:8px 10px;font:12px monospace;position:absolute;top:12px;left:12px}.recording-badge i{background:#e34141;border-radius:50%;width:8px;height:8px;margin-right:7px;display:inline-block}.camera-controls{text-align:center;padding-top:18px}.preview-wrap>p{color:#667168;font-size:12px}.preview-actions{grid-template-columns:1fr 1fr;gap:12px;display:grid}.recorder .secondary{color:#26352c;background:0 0;border:1px solid #9ba69e}.upload-status{justify-content:center;align-items:center;gap:12px;padding:18px;display:flex}.spinner{border:2px solid #bcc6be;border-top-color:#26352c;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.recorder-error{color:#9f3f3f;background:#f8e8e6;padding:12px;font-size:13px}.privacy-note{text-align:center;color:#778078;margin:18px 0 0;font-size:10px;line-height:1.5}.success-card{text-align:center;padding:45px 30px}.success-card span{color:#fff;background:#476950;border-radius:50%;place-items:center;width:50px;height:50px;font-size:25px;display:inline-grid}.success-card h3{font:30px Georgia,serif}.video-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;display:grid}.video-card{background:#fff;border:1px solid #dde1db}.video-card video{aspect-ratio:9/16;object-fit:contain;background:#111;width:100%;max-height:520px;display:block}.video-card div{padding:16px}.video-card h2{margin:0 0 7px;font:22px Georgia,serif}.video-card p{color:#6f7971;margin:0;font-size:12px}.event-detail nav>a{font-size:13px;text-decoration:none}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:700px){.shell,.auth-shell,.dashboard-shell,.form-page{padding-left:20px;padding-right:20px}.hero{padding-top:70px}.steps{grid-template-columns:1fr}.nav-actions{gap:12px}.auth-card,.event-form-card{margin-top:50px;padding:28px}.empty-state{padding:40px 24px}.dashboard-head-row,.event-card{flex-direction:column;align-items:flex-start}.field-grid{grid-template-columns:1fr}.guest-event-head{margin-top:8vh}.recorder{padding:18px}.preview-actions{grid-template-columns:1fr}}.event-card-share{padding:0;display:block}.event-card-main{justify-content:space-between;align-items:center;gap:30px;padding:25px 28px;display:flex}.share-actions{border-top:1px solid #e5e7e2;flex-wrap:wrap;align-items:center;gap:10px;padding:14px 28px;display:flex}.share-actions button,.share-actions a{color:#304036;cursor:pointer;background:#f9faf7;border:1px solid #c7cec8;padding:9px 12px;font:12px Arial;text-decoration:none}.share-actions button:hover,.share-actions a:hover{background:#e8ece4}.qr-overlay{z-index:1000;background:#152019c9;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.qr-modal{color:#26352c;text-align:center;background:#fff;width:min(440px,100%);padding:35px;position:relative;box-shadow:0 30px 100px #0005}.qr-close{color:#526057;cursor:pointer;background:0 0;border:0;font-size:30px;position:absolute;top:9px;right:12px}.qr-modal h2{margin:12px 0 22px;font:27px Georgia,serif}.qr-modal img{width:min(100%,330px);margin:0 auto;display:block}.qr-url{color:#6f7971;word-break:break-all;margin:18px 0;font-size:10px}.qr-download{color:#fff;background:#26352c;padding:13px 18px;font-size:13px;text-decoration:none;display:inline-block}.detail-empty,.detail-video-grid{margin-top:28px}.event-detail>.share-actions{background:#fff;border:1px solid #e1e4de;max-width:900px;margin-bottom:28px}@media (max-width:700px){.event-card-main{flex-direction:column;align-items:flex-start;padding:22px}.share-actions{padding:14px 22px}.share-actions button,.share-actions a{text-align:center;white-space:nowrap;flex:1}.qr-modal{padding:30px 20px}}
