@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700;800&display=swap";:root{--ink:#292637;--muted:#8a8597;--purple:#8070af;--line:#e8e4ee;--paper:#faf9fc}*{box-sizing:border-box}body{color:var(--ink);background:var(--paper);margin:0;font-family:DM Sans,Noto Sans SC,sans-serif;font-size:14px}button,input{font:inherit}button,a,input{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}small{color:var(--muted);letter-spacing:.03em;font-size:10px;font-weight:400;line-height:1.6;display:block}h1,h2,h3,p{margin-top:0}h2{font-size:23px}h3{font-size:16px}p{color:#756e84;line-height:1.9}button{border:0}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:100px;margin:0 5.5%;display:flex}.brand{letter-spacing:.08em;align-items:center;gap:12px;font-size:17px;font-weight:700;display:flex}.brand small{letter-spacing:.24em;font-size:10px}.brand-icon{color:#7b6b9f;font-size:37px}nav{align-items:center;gap:42px;display:flex}nav button{color:#827b91;background:0 0;padding:13px 0;font-size:12px}nav .active{color:#6b578f}nav small{font-size:9px}nav a{font-size:12px}.live{align-items:center;gap:10px;font-size:11px;display:flex}.live small{font-size:8px}.live i,.pill i{background:#98a48f;border-radius:50%;width:6px;height:6px;display:inline-block}.hero{grid-template-columns:1fr 1fr;gap:20px;max-width:1280px;min-height:650px;margin:auto;padding:68px 0 76px;display:grid}.pill{color:#7f6b9b;letter-spacing:.08em;background:#f0edf6;border:1px solid #e7e0f1;border-radius:30px;padding:8px 16px;font-size:11px;display:inline-block}.pill i{background:#9584b3;margin-right:8px}.pill small{margin-top:3px;margin-left:15px;font-size:7px}.hero-copy{padding-left:18px}.hero h1{letter-spacing:-.035em;margin:24px 0 22px;font-size:61px;font-weight:600;line-height:1.3}.hero h1>span{color:#9885bc}.hero h1 em{letter-spacing:-.02em;color:#a6a0b5;margin-top:14px;font-size:36px;font-style:normal;font-weight:400;line-height:1.2;display:block}.hero p{margin-bottom:25px;font-size:13px;line-height:1.9}.hero p small{margin-top:8px;font-size:10px;line-height:1.6}.primary,.secondary,.danger,.button{text-align:left;border-radius:10px;justify-content:space-between;align-items:center;gap:30px;min-height:57px;padding:14px 22px;transition:transform .2s,background .2s;display:inline-flex}.primary{color:#fff;background:#8070a7;box-shadow:0 5px 10px #8070a715}.primary small{color:#dcd4ea;font-size:9px}.primary:hover{background:#6b5b93;transform:translateY(-2px)}.secondary{color:#6c5e88;background:#efecf5;border:1px solid #e3ddec}.secondary:hover{background:#e6dfef}.danger{color:#9b626c;background:#faeeee}.danger small{color:#aa7c84}.back{color:#8b809b;text-align:left;background:0 0;padding:10px 0}.back:before{content:"←";margin-right:12px}.back span{display:inline-block}.back small{font-size:9px}.hero .primary{min-width:236px}.arrow{font-size:23px}.hero-meta{color:#8d849c;gap:23px;margin-top:27px;font-size:10px;display:flex}.hero-meta small{color:#aaa3b4;margin-top:5px;font-size:7px}.future-art{isolation:isolate;background:radial-gradient(#e7dcf48c 0,#f2ebfa55 40%,#0000 70%);border-radius:50%;justify-content:center;align-items:center;min-height:540px;display:flex;position:relative}.orbit{z-index:-1;border:1px solid #d9d0e3;border-radius:50%;position:absolute}.orbit-one{width:520px;height:365px;transform:rotate(-28deg)}.orbit-two{border-color:#e4ddea;width:440px;height:500px;transform:rotate(35deg)}.art-label{letter-spacing:.15em;color:#a399b3;font-size:8px;position:absolute;top:14px;left:45px}.art-label i{background:#a799bb;border-radius:50%;width:5px;height:5px;margin-right:8px;display:inline-block}.hero-pass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(130deg,#fbf9ffc9,#ede8f6dc);border:1px solid #fff;border-radius:18px;width:286px;height:381px;padding:22px;position:relative;transform:rotate(-9deg);box-shadow:14px 28px 55px #87759c28}.pass-top{color:#91839e;letter-spacing:.13em;justify-content:space-between;align-items:center;font-size:9px;display:flex}.pass-top span{font-size:25px}.silhouette{background:radial-gradient(at 50% 90%,#d3c4e6,#e6ddf064 65%,#0000 80%);height:220px;margin-top:5px;position:relative;overflow:hidden}.head{background:linear-gradient(135deg,#ddd0e9,#b7a4cc);border-radius:45%;width:76px;height:93px;position:absolute;top:32px;left:50%;transform:translate(-50%);box-shadow:inset -8px -5px 20px #a997bd33}.body{background:linear-gradient(120deg,#d8cce4,#bca9d3);border-radius:90px 90px 0 0;width:180px;height:140px;position:absolute;bottom:-18px;left:50%;transform:translate(-50%)}.silhouette>span{color:#b8a1ce;font-size:27px;position:absolute;top:25px;left:180px}.pass-bottom{border-top:1px solid #d9d0e3;padding-top:18px;font-size:13px}.pass-bottom small{letter-spacing:.15em;font-size:7px}.pass-bottom>span{letter-spacing:.15em;color:#9c8aaf;margin-top:12px;font-size:10px;display:block}.barcode{opacity:.6;background:repeating-linear-gradient(90deg,#a491b6 0 1px,#0000 1px 3px,#a491b6 3px 5px,#0000 5px 7px);width:62px;height:24px;position:absolute;bottom:18px;right:22px}.floating-tag{z-index:2;background:#fffb;border:1px solid #fff;border-radius:10px;gap:12px;padding:13px 18px;font-size:12px;display:flex;position:absolute;top:130px;right:0;transform:rotate(6deg);box-shadow:0 10px 40px #9c85b315}.floating-tag>span:first-child{font-size:23px}.floating-tag small{letter-spacing:.1em;font-size:7px}.spark{color:#a88cbe;position:absolute}.s1{font-size:44px;top:60px;right:100px}.s2{font-size:29px;bottom:120px;left:34px}.coin{color:#b58b37;background:linear-gradient(135deg,#f8e3b1,#d9b96b);border:5px double #f5dfac;border-radius:50%;place-items:center;width:62px;height:62px;font-size:25px;display:grid;position:absolute;box-shadow:3px 7px #cba962,8px 15px 20px #c4a46722}.coin-one{bottom:103px;right:62px;transform:rotate(-15deg)}.coin-two{width:49px;height:49px;font-size:19px;bottom:69px;right:104px;transform:rotate(15deg)}.art-caption{color:#a69aaf;justify-content:space-between;align-items:center;font-size:10px;display:flex;position:absolute;bottom:0;left:50px;right:40px}.art-caption>span:first-child{font-size:18px;font-weight:400}.art-caption small{letter-spacing:.09em;font-size:7px}.journey-section{border-top:1px solid var(--line);max-width:1280px;margin:auto;padding:34px 0 45px}.section-title{justify-content:space-between;align-items:flex-end;margin-bottom:25px;display:flex}.eyebrow{letter-spacing:.2em;color:#a194af;font-size:8px}.section-title h2{margin:9px 0 0;font-size:22px;font-weight:500}.section-title h2 small{margin-top:6px;font-size:11px}.section-note{text-align:right;color:#aaa2b3;font-size:10px}.section-note small{font-size:7px}.steps-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.step-card{background:#fff9;border:1px solid #e8e3ef;border-radius:14px;padding:24px 22px}.step-card>div{justify-content:space-between;align-items:center;margin-bottom:23px;display:flex}.step-icon{color:#a28ab8;background:#eee8f5;border-radius:11px;place-items:center;width:40px;height:40px;font-size:23px;display:grid}.step-card:nth-child(2) .step-icon{color:#8f9eb1;background:#e9edf2}.step-card:nth-child(3) .step-icon{color:#c5aa68;background:#f4eddc}.step-card:nth-child(4) .step-icon{color:#91a289;background:#e8eee7}.step-num{color:#c7bfce;font-size:12px}.step-card h3{margin-bottom:13px;font-size:15px;font-weight:500}.step-card h3 small{margin-top:6px;font-size:10px}.step-card p{margin:0;font-size:10px}.step-card p small{margin-top:3px;font-size:8px}.bottom-note{color:#aaa0b7;justify-content:center;align-items:center;gap:14px;padding:20px 0 38px;font-size:11px;display:flex}.bottom-note>span:first-child{font-size:25px}.bottom-note small{letter-spacing:.12em;font-size:7px}footer{border-top:1px solid var(--line);color:#b0a7bb;letter-spacing:.06em;justify-content:space-between;align-items:center;padding:25px 5.5%;font-size:8px;display:flex}footer>span:nth-child(2){text-align:center;font-size:9px}footer small{font-size:7px}.content{max-width:1100px;min-height:65vh;margin:40px auto 80px}.narrow{max-width:760px;margin-left:auto;margin-right:auto}.heading{margin:20px 0 34px}.heading h1{letter-spacing:-.03em;margin:10px 0;font-size:38px;font-weight:600;line-height:1.5}.heading h1 span{color:#a69ab4;letter-spacing:0;font-size:20px;font-weight:400;display:block}.heading p{font-size:12px}.panel{border:1px solid var(--line);background:#fff;border-radius:18px;margin-bottom:22px;padding:30px}.privacy{padding:22px 26px}.privacy p{margin:10px 0 0 27px;font-size:11px}.check{align-items:center;gap:12px;display:flex!important}.check input{accent-color:#8972ab;width:17px!important}.check small{margin-top:4px}label{margin-bottom:20px;font-size:12px;display:block}label>span{margin-bottom:8px;display:block}input:not([type=checkbox]):not([type=file]){width:100%;color:var(--ink);background:#faf9fc;border:1px solid #e2dce9;border-radius:9px;padding:12px 14px}input:focus{border-color:#9e88b8}.form-grid{grid-template-columns:1fr 1fr;gap:6px 25px;display:grid}.full{grid-column:1/-1}.form-note{color:#a094ad;margin-bottom:20px;font-size:11px}.photo-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.photo-box{background:#f0ebf6;border:1px dashed #d4c9e0;border-radius:18px;height:360px;position:relative;overflow:hidden}.photo-box.future{background:radial-gradient(#e6dbee,#f4eff8)}.photo-box img,.photo-box video{object-fit:cover;width:100%;height:100%}.empty-photo{color:#ae9bc3;flex-direction:column;justify-content:center;align-items:center;gap:15px;height:100%;font-size:75px;display:flex}.empty-photo>span{text-align:center;font-size:14px}.photo-label{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffc;border-radius:7px;padding:7px 12px;font-size:10px;position:absolute;bottom:15px;left:18px}.photo-label small{font-size:7px}.actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;display:flex}.centered{justify-content:center}.button{cursor:pointer;margin:0;font-size:12px}.button input{display:none}.notice{color:#8b789f;background:#f4f0f8;border-radius:10px;margin:22px 0;padding:17px 20px;font-size:12px;line-height:1.8}.notice small{font-size:10px}.artifact{border-radius:16px;max-width:850px;margin:20px auto;overflow:hidden;box-shadow:0 18px 60px #75618c15}.artifact canvas{width:100%;height:auto;display:block}.certificate{border-radius:0}.reward{text-align:center;color:#947e50;margin:30px 0;font-size:19px}.reward small{font-size:12px}.print-note{text-align:center;margin-top:25px;font-size:10px}.print-note small{font-size:9px}.rules{text-align:center}.large-coin{color:#a98535;background:#e8c47b;border:7px double #f8e0a4;border-radius:50%;place-items:center;width:90px;height:90px;margin:0 auto 25px;font-size:38px;display:grid;box-shadow:0 6px #ba9958}.rules h2{font-size:26px}.rules h2 small{font-size:15px}.rules p{margin:25px 0;font-size:13px}.rules p small{margin-top:10px;font-size:11px}.mini-stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-around;gap:15px;margin:10px 0 25px;padding:25px 0;display:flex}.balance-strip{background:#efeaf6;border-radius:14px;align-items:center;gap:50px;margin-bottom:25px;padding:22px 30px;font-size:20px;display:flex}.balance-strip small{letter-spacing:.1em;font-size:8px}.progress-track{background:#e0d7eb;border-radius:5px;flex:1;height:5px;overflow:hidden}.progress-track i{background:#9c85b7;height:100%;display:block}.challenge-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.challenge-card{padding:25px}.challenge-card .primary,.challenge-card .secondary{width:100%}.challenge-card h2{font-size:22px}.challenge-card h2 small{font-size:11px}.challenge-top{color:#a898b6;justify-content:space-between;font-size:18px;display:flex}.challenge-illustration{color:#a293bf;place-items:center;height:150px;font-size:80px;display:grid}.ill-1{color:#c1a765}.ill-2{color:#90a79d}.challenge-card p{font-size:12px}.challenge-card p small{font-size:8px}.challenge-rewards{color:#b99c62;margin-bottom:25px;font-size:16px}.challenge-rewards span{float:right;color:#b5a6ba}.locked{opacity:.6}.challenge-page-top{color:#9d8ab0;justify-content:space-between;margin-top:20px;display:flex}.detail-grid{grid-template-columns:1.1fr 1fr;gap:25px;display:grid}.instructions{font-size:16px;line-height:2}.instructions small{margin-top:20px;font-size:12px;line-height:1.9}.timer{text-align:center}.timer strong{color:#a28bb9;margin:20px 0;font-size:42px;display:block}.result-badge{color:#88709e;background:#f1edf6;border-radius:10px;padding:20px;font-size:22px}.feedback{text-align:center;padding:50px 35px}.feedback-icon{color:#c1a665;font-size:80px;animation:.6s both pop}.coin-change{color:#b79b63;margin:25px 0;font-size:60px;animation:.6s both pop;display:block}.feedback .back{margin:20px auto 0;display:block}.results{text-align:center}.tier-medal{color:#c8a964;font-size:95px}.results h2{margin:15px 0;font-size:31px}.results h2 small{font-size:16px}.results .primary{margin-top:30px}.result-row{border-bottom:1px solid var(--line);text-align:left;justify-content:space-between;align-items:center;gap:15px;padding:14px 0;font-size:12px;display:flex}.result-row:last-child{border-bottom:0}.result-row small{font-size:9px}.offline{text-align:center;color:#9f7646;background:#fff0d9;padding:15px}.toast{color:#9f5b65;z-index:100;white-space:pre-wrap;background:#fff1f1;border:1px solid #eacece;border-radius:12px;max-width:90%;padding:18px 45px 18px 22px;position:fixed;top:110px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #44304714}.toast button{color:inherit;background:0 0;font-size:23px;position:absolute;top:8px;right:10px}.busy{color:#fff;z-index:120;background:#312a41ef;border-radius:15px;padding:15px 25px;font-size:12px;position:fixed;bottom:25px;left:50%;transform:translate(-50%);box-shadow:0 5px 30px #30213d22}.busy small{color:#d6ccdf;margin-left:10px;display:inline}.spinner{border:2px solid #b4a4ce;border-top-color:#0000;border-radius:50%;width:13px;height:13px;margin-right:10px;animation:.8s linear infinite spin;display:inline-block}.modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:80;background:#28203555;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{width:500px;max-height:90vh;position:relative;overflow:auto;box-shadow:0 20px 90px #30223922}.modal.wide{width:800px}.close{color:#9b8baa;background:0 0;font-size:26px;position:absolute;top:12px;right:18px}.modal h2{margin-top:10px;font-size:23px}.modal h2 small{font-size:13px}.admin-content{max-width:1240px}.admin-toolbar{align-items:center;gap:15px;margin-bottom:25px;display:flex}.admin-toolbar>span{flex:1}.stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.stat{margin:0;padding:22px}.stat>span{font-size:12px}.stat strong{color:#82709c;margin-top:15px;font-size:35px;font-weight:500;display:block}.stat small{font-size:9px}.analytics-grid{grid-template-columns:1.25fr 1fr;gap:22px;margin-top:22px;display:grid}.bar{background:#e7dce9;border-radius:8px;height:11px;overflow:hidden}.bar i{background:#9c8ab5;min-width:0;height:100%;display:block}.analytic-row{margin:25px 0}.analytic-row p{margin:9px 0;font-size:10px;line-height:1.6}.donut{border-radius:50%;place-items:center;width:180px;height:180px;margin:20px auto;display:grid}.donut span{background:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:125px;height:125px;font-size:35px;display:flex}.donut small{font-size:9px}.search{max-width:420px;margin:10px 0 25px}.table-wrap{overflow:auto}table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:12px}th{text-align:left;color:#94849f;background:#f5f1f8;font-weight:400}td,th{border-bottom:1px solid var(--line);padding:16px 12px}tbody tr{cursor:pointer}tbody tr:hover{background:#f9f5fc}.empty{text-align:center;padding:30px}.export-grid,.rules-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.export-grid .actions{gap:8px}.export-grid button{gap:10px;padding:12px}.rules-grid h3{font-size:14px}.rules-grid label{margin-top:15px}pre{white-space:pre-wrap;color:#8e8099;font-size:11px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pop{0%{opacity:0;transform:translateY(15px)scale(.9)}to{opacity:1;transform:none}}@media (min-width:1500px){.hero{padding-top:85px;padding-bottom:90px}}@media (max-width:1400px){.hero,.journey-section{margin-left:6%;margin-right:6%}.hero h1{font-size:52px}.future-art{transform-origin:50%;transform:scale(.93)}.content{margin-left:6%;margin-right:6%}.narrow{margin-left:auto;margin-right:auto}}@media (max-width:1000px){header{margin:0 4%}nav{gap:20px}.live{display:none}.hero{grid-template-columns:1fr 1fr;gap:0;min-height:590px;padding-top:45px}.hero-copy{padding:0}.hero h1{font-size:42px}.hero h1 em{font-size:29px}.future-art{min-height:500px;margin-left:-50px;margin-right:-50px;transform:scale(.75)}.hero-meta{gap:12px;font-size:8px}.hero-meta small{font-size:6px}.hero{padding-bottom:40px}.steps-grid{gap:10px}.step-card{padding:20px 14px}.step-card h3{font-size:13px}.step-card p{font-size:9px}.section-note{display:none}.content.narrow{margin-left:5%;margin-right:5%}.detail-grid{grid-template-columns:1fr}.challenge-grid{gap:12px}.challenge-card{padding:18px}.stats-grid{grid-template-columns:repeat(2,1fr)}.analytics-grid,.export-grid{grid-template-columns:1fr}.export-grid>div{justify-content:space-between;align-items:center;display:flex}.export-grid .actions{margin:0}}@media (max-width:650px){header{height:80px}.brand{gap:8px;font-size:13px}.brand-icon{font-size:28px}.brand small{font-size:8px}nav{gap:18px}nav button,nav a{font-size:10px}nav small{font-size:7px}nav button:nth-child(2){display:none}.hero{flex-direction:column;margin:0 6%;padding-top:34px;display:flex}.hero h1{margin-top:22px;font-size:46px}.hero h1 em{font-size:30px}.hero p{font-size:12px}.hero-copy{z-index:1;position:relative}.hero-meta{gap:22px;font-size:9px}.future-art{min-height:520px;margin:-50px -10% -35px;transform:scale(.75)}.floating-tag{right:15px}.art-label{top:32px;left:30px}.hero{padding-bottom:0}.journey-section{padding-top:28px}.section-title h2{font-size:20px}.steps-grid{grid-template-columns:1fr 1fr;gap:12px}.step-card{padding:20px 17px}.step-card h3{font-size:13px}.step-card>div{margin-bottom:18px}.bottom-note{padding:0 0 30px;font-size:10px}.bottom-note small{font-size:6px}footer{text-align:center;flex-wrap:wrap;justify-content:center;gap:18px}footer>span:last-child{display:none}.content{margin:25px 5% 50px}.heading h1{font-size:29px}.heading h1 span{font-size:16px}.panel{padding:23px 20px}.photo-grid{gap:12px}.photo-box{height:230px}.empty-photo{font-size:45px}.empty-photo>span{font-size:11px}.photo-label{padding:5px 8px;font-size:9px;bottom:8px;left:8px}.photo-label small{font-size:6px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.actions{gap:10px}.primary,.secondary,.danger,.button{gap:15px;padding:13px 17px;font-size:12px}.privacy p{margin-left:0}.check{align-items:flex-start}.check input{flex-shrink:0}.challenge-grid{grid-template-columns:1fr}.challenge-card{padding:25px}.challenge-illustration{height:100px}.balance-strip{flex-wrap:wrap;gap:18px;padding:20px;font-size:16px}.progress-track{flex-basis:100%;height:4px}.rules-grid{grid-template-columns:1fr}.stats-grid{gap:10px}.stat{padding:17px}.stat strong{font-size:30px}.admin-toolbar{flex-wrap:wrap}.admin-toolbar>span{flex-basis:100%}.modal-overlay{padding:14px}.mini-stats{font-size:12px}.print-note small{font-size:8px}.reward{font-size:16px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@page{size:A4 landscape;margin:0}@media print{html,body{width:297mm;height:210mm;background:#fff!important;margin:0!important;padding:0!important;overflow:hidden!important}body>*{visibility:hidden}header,footer,.content>.back,.heading,.actions,.reward,.print-note,.toast,.busy,.modal-overlay,.offline{display:none!important}main,.content{visibility:visible;width:297mm!important;height:210mm!important;min-height:0!important;margin:0!important;padding:0!important;display:block!important}.artifact{break-inside:avoid;page-break-inside:avoid;position:fixed;inset:0;visibility:visible!important;width:277mm!important;max-width:none!important;height:196mm!important;box-shadow:none!important;border-radius:0!important;margin:auto!important;overflow:hidden!important}.artifact *{visibility:visible!important}.artifact canvas{object-fit:contain;width:100%!important;height:100%!important}body[data-print=id] .artifact{width:235mm!important;height:144mm!important}body{-webkit-print-color-adjust:exact;print-color-adjust:exact}}textarea,select{width:100%;color:var(--ink);font:inherit;background:#faf9fc;border:1px solid #e2dce9;border-radius:9px;margin-top:8px;padding:12px}textarea{resize:vertical;min-height:130px}details{border-top:1px solid var(--line);padding:20px 0}summary{cursor:pointer;color:#8c75a4;margin-bottom:16px}.selection-toolbar{background:#f5f1f8;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:0 0 20px;padding:15px 18px;display:flex}.selection-toolbar .actions{margin:0}.selection-cell{width:90px}.selection-cell label{gap:8px;margin:0;font-size:11px}.selection-cell input{accent-color:#8070af;cursor:pointer;width:17px;height:17px}.row-checked{background:#f3edf9}.deletion-list{border:1px solid var(--line);border-radius:10px;max-height:260px;padding:0;list-style:none;overflow:auto}.deletion-list li{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:12px 15px;font-size:12px;display:flex}.deletion-list li:last-child{border:0}.artifact.id{background:#fff;border:1px solid #e3e8f1;border-radius:0;width:100%;max-width:530px;box-shadow:0 18px 55px #303c781c}.id-design-note{text-align:center;margin:-12px auto 25px}.id-design-note>span{letter-spacing:.22em;color:#879dbf;font-size:9px}.id-design-note p{color:#566485;margin:9px 0;font-size:14px}.id-design-note small{color:#929ab0;font-size:10px}@page identity{size:A4 portrait;margin:0}@media print{.id-design-note{display:none!important}body[data-print=id]{width:210mm!important;height:297mm!important}html:has(body[data-print=id]){width:210mm!important;height:297mm!important}body[data-print=id]{page:identity}body[data-print=id] main,body[data-print=id] .content{width:210mm!important;height:297mm!important}body[data-print=id] .artifact.id{border:0!important;width:190mm!important;height:267.04mm!important}}.artifact.id.folded{perspective:1800px;border:0;max-width:960px;position:relative;overflow:visible}.fold-leaf{transform-origin:0;pointer-events:none;z-index:2;background:#203c66;width:50%;height:100%;animation:1.7s .15s both unfold-card;position:absolute;top:0;right:0;box-shadow:-10px 2px 30px #142c4c25}.fold-leaf img{object-fit:fill;width:100%;height:100%;display:block}.fold-crease{pointer-events:none;background:#233d6840;width:1px;position:absolute;top:0;bottom:0;left:50%;box-shadow:0 0 15px 3px #142c4c16}@keyframes unfold-card{0%,12%{opacity:1;transform:rotateY(-179deg)}85%{opacity:1;transform:rotateY(0)}to{opacity:0;transform:rotateY(0)}}.fold-size{text-align:center;color:#8190a7;margin:18px 0 28px;font-size:11px}.future-letter-editor{max-width:960px;margin:24px auto}.letter-editor-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.letter-editor-heading h2{margin-bottom:6px}.letter-editor-heading h2 small{font-size:11px}.letter-editor-heading p{font-size:12px}.letter-dice{flex-shrink:0}.letter-dice>span{font-size:34px}.letter-dice.rolling>span{animation:.6s dice-roll}.future-letter-editor textarea{resize:vertical;color:#263e62;width:100%;min-height:105px;line-height:1.9;font:inherit;background:#f8faff;border:1px solid #d8deea;border-radius:10px;padding:15px}.quote-choices{gap:9px;display:grid}.quote-choices button{text-align:left;color:#667187;background:#f8f9fc;border:1px solid #e4e8f0;border-radius:9px;align-items:flex-start;gap:14px;padding:13px;font-size:12px;line-height:1.8;display:flex}.quote-choices button.selected{color:#263f67;background:#eef3fb;border-color:#6b88b6}.quote-choices b{color:#7f96b9}.letter-save-hint{color:#8791a0;font-size:11px}.future-letter-editor .primary small{color:inherit}.folded canvas{z-index:0;position:relative}@keyframes dice-roll{to{transform:rotate(360deg)}}@media (max-width:650px){.future-letter-editor{padding:20px 16px}.letter-editor-heading h2{font-size:18px}.letter-dice{gap:6px;padding:10px}.fold-size{font-size:9px}}@media (prefers-reduced-motion:reduce){.fold-leaf{display:none!important}}@page identity{size:A5 landscape;margin:0}@media print{.fold-leaf,.fold-crease,.fold-size,.future-letter-editor{display:none!important}body[data-print=id]{width:210mm!important;height:148mm!important}html:has(body[data-print=id]){width:210mm!important;height:148mm!important}body[data-print=id] main,body[data-print=id] .content{width:210mm!important;height:148mm!important}body[data-print=id] .artifact.id.folded{perspective:none!important;width:210mm!important;height:148mm!important}}.fold-leaf img{box-sizing:border-box;background:#efefef;padding:1.42%}.memory-content{max-width:1280px}.memory-intro{text-align:center;padding:24px 0 45px}.memory-intro h1{letter-spacing:-.03em;margin:16px 0;font-size:44px}.memory-intro h1 small{margin-top:10px;font-size:17px;font-weight:400}.memory-intro p{font-size:16px}.memory-intro a{color:#87709e;font-size:12px}.memory-section-title{align-items:center;gap:20px;margin-bottom:25px;display:flex}.memory-section-title>span{color:#9b82ad;border:1px solid #dbd2e5;border-radius:50%;place-items:center;width:56px;height:56px;font-size:19px;display:grid}.memory-section-title h2{margin:0}.memory-section-title h2 small{letter-spacing:.12em;margin-top:6px;font-size:9px}.memory-section-title p{margin:6px 0 0;font-size:12px}.memory-studio{border-top:1px solid var(--line);padding:36px 0 55px}.booth-layout{grid-template-columns:minmax(320px,440px) 1fr;align-items:start;gap:45px;display:grid}.booth-controls{padding:25px}.booth-controls fieldset{border:0;min-width:0;margin:0 0 22px;padding:0}.booth-controls legend{margin-bottom:12px;font-size:12px}.booth-choice{gap:8px;margin-bottom:8px;display:flex}.booth-choice button{color:#7c6e8c;background:#faf8fd;border:1px solid #e1d9e9;border-radius:8px;flex:1;padding:12px 8px;font-size:11px}.booth-choice button[aria-pressed=true]{color:#614c80;background:#eae3f3;border-color:#9f87ba}.booth-camera{aspect-ratio:4/3;background:#eeeaf4;border-radius:12px;position:relative;overflow:hidden}.booth-camera video{object-fit:cover;width:100%;height:100%}.booth-camera-empty{text-align:center;color:#a58fba;place-content:center;height:100%;display:grid}.booth-camera-empty>span{font-size:64px}.booth-camera-empty p{margin:10px;font-size:12px}.booth-camera-empty small{font-size:8px}.booth-camera>strong{color:#fff;text-shadow:0 3px 20px #0005;background:#21132b30;place-items:center;font-size:90px;display:grid;position:absolute;inset:0}.booth-controls .actions{gap:8px;margin:14px 0}.booth-controls .actions button,.booth-controls .button{gap:8px;padding:11px 13px;font-size:11px}.booth-controls .check{margin:10px 0 20px;font-size:11px}.booth-controls .disabled{opacity:.5;pointer-events:none}.booth-slots{gap:9px;margin:20px 0;display:flex}.booth-slots button{aspect-ratio:4/5;color:#b5a5c5;background:#f1edf5;border:2px solid #0000;border-radius:7px;width:25%;padding:3px;position:relative;overflow:hidden}.booth-slots button.selected{border-color:#9a7eb8}.booth-slots img{object-fit:cover;border-radius:3px;width:100%;height:100%}.booth-slots span{font-size:27px}.booth-slots small{color:#fff;background:#857193;border-radius:4px;padding:0 4px;position:absolute;bottom:3px;right:5px}.frame-swatches{flex-wrap:wrap;gap:7px;display:flex}.frame-swatches button{color:#8e7e9d;background:#fff;border:1px solid #e2dbe8;border-radius:20px;align-items:center;gap:5px;padding:7px 9px;font-size:10px;display:flex}.frame-swatches button.selected{background:#f4eefb;border-color:#9277af}.frame-swatches i{border:1px solid #d1cbd6;border-radius:50%;width:16px;height:16px;display:inline-block}.booth-controls select{color:#7a6a8c;background:#fbf9fd;border:1px solid #ded7e7;border-radius:8px;width:100%;margin-top:9px;padding:10px;display:block}.booth-stickers{flex-wrap:wrap;gap:6px;margin-bottom:9px;display:flex}.booth-stickers button{background:#faf7fd;border:1px solid #e6deed;border-radius:8px;min-width:36px;height:40px;font-size:25px}.booth-stickers button[aria-pressed=true]{background:#e5d7f0;border-color:#9d80b8}.booth-output{text-align:center;background:radial-gradient(at 40% 30%,#e9e3f0,#0000 75%);min-width:0;padding:30px 25px;position:sticky;top:25px}.booth-output>.eyebrow{margin-bottom:20px;display:block}.booth-paper{max-width:100%;line-height:0;display:inline-block;transform:rotate(1deg);box-shadow:0 18px 45px #48365427}.booth-paper canvas{object-fit:contain;touch-action:none;cursor:crosshair;width:100%;height:auto;max-height:850px;display:block}.booth-output.strip .booth-paper{width:245px}.booth-output.grid .booth-paper{width:460px}.booth-output.portrait .booth-paper{width:350px}.booth-output.wide .booth-paper{width:560px}.booth-output>p{margin:28px 0 0;font-size:12px}.booth-output small{font-size:9px}.booth-save{justify-content:center;width:100%;margin:8px 0 14px}.booth-save small{color:inherit}.booth-error{color:#a95669;background:#fff0f1;border-radius:8px;padding:12px;font-size:12px}.memory-privacy{text-align:center;padding:20px;font-size:12px}.memory-privacy small{font-size:10px}#instant-memory{scroll-margin-top:25px}@media (max-width:950px){.booth-layout{grid-template-columns:minmax(280px,1fr) 1fr;gap:20px}.booth-output{padding:25px 10px}header nav{gap:20px}}@media (max-width:650px){header{flex-wrap:wrap;gap:12px;height:auto;min-height:80px;padding:14px 0}header nav{justify-content:space-between;gap:10px;width:100%}header nav button:nth-child(2){display:block}.memory-intro h1{font-size:32px}.memory-intro h1 small{font-size:13px}.booth-layout{grid-template-columns:1fr}.booth-output{order:-1;padding:20px 30px;position:static}.booth-paper canvas{max-height:560px}.booth-output.strip .booth-paper{width:180px}.booth-controls{padding:22px}.memory-section-title{gap:13px}.memory-section-title h2{font-size:21px}}.memory-next{text-align:center;background:linear-gradient(135deg,#ede7f4,#f5f2fa);border-radius:18px;flex-direction:column;align-items:center;gap:16px;margin:-12px 0 45px;padding:28px 18px 36px;display:flex}.memory-next .primary{justify-content:space-between;gap:35px;min-width:260px}.memory-next .primary small{color:#e4daef;margin-top:5px;font-size:10px}.memory-next .eyebrow{letter-spacing:.13em;font-size:10px}#instant-memory:focus{outline:none}.material-frames{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:10px;display:grid}.material-frames button{text-align:left;color:#776784;background:#faf8fc;border:1px solid #e3dbe9;border-radius:9px;align-items:center;gap:10px;min-width:0;padding:8px;font-size:12px;display:flex}.material-frames button.selected{background:#eee6f6;border-color:#9575b5}.material-frames img{object-fit:contain;background:#fff;border-radius:3px;width:40px;height:70px}.material-frames small{margin-top:5px;font-size:8px}.material-frames svg{background:#fff;border-radius:3px;flex-shrink:0;width:40px;height:70px}.material-frames{overscroll-behavior:contain;max-height:410px;padding:2px;overflow-y:auto}.memory-intro a.memory-return{border:1px solid #d5c6e1;gap:16px;margin-top:16px;font-size:13px}.memory-return small{color:#9781a8;margin-top:4px;font-size:10px}.artifact.certificate{background:#f8edde;border-radius:0;max-width:560px}@page honor{size:A4 portrait;margin:0}@media print{body[data-print=certificate]{page:honor;width:210mm!important;height:297mm!important}html:has(body[data-print=certificate]){width:210mm!important;height:297mm!important}body[data-print=certificate] main,body[data-print=certificate] .content{width:210mm!important;height:297mm!important}body[data-print=certificate] .artifact.certificate{width:210mm!important;max-width:none!important;height:297mm!important}.notice{display:none!important}}header nav a.memory-nav{color:#62427e;background:linear-gradient(125deg,#f4eafa,#e9efff);border:1px solid #a987c8;border-radius:14px;align-items:center;gap:9px;padding:12px 16px;font-size:13px;font-weight:650;transition:transform .18s,box-shadow .18s;display:inline-flex;position:relative;box-shadow:0 4px 14px #8a67ad18}header nav a.memory-nav small{color:#866a9e;letter-spacing:.08em;font-size:7px}:is(header nav a.memory-nav:hover,header nav a.memory-nav:focus-visible){transform:translateY(-2px);box-shadow:0 7px 20px #8a67ad30}header nav a.memory-nav.active{color:#52316f;background:linear-gradient(125deg,#eadbf6,#dce7ff);border-color:#8962ad}.memory-nav-tag{color:#70511c;white-space:nowrap;background:#f7d985;border:1px solid #efca64;border-radius:7px 7px 2px;padding:3px 7px;font-size:9px;font-weight:600;position:absolute;top:-12px;right:9px;box-shadow:0 2px 6px #b8913320}.memory-nav-arrow{color:#9672b4;font-size:18px}.memory-nav-icon{flex-shrink:0}@media (max-width:950px){header nav{gap:16px}header nav a.memory-nav{gap:7px;padding:10px 12px}}@media (max-width:650px){header nav a.memory-nav{border-radius:10px;gap:5px;padding:9px 10px;font-size:11px}header nav a.memory-nav small{font-size:6px}.memory-nav-tag{font-size:8px;top:-11px;right:5px}.memory-nav-icon{width:17px;height:17px}.memory-nav-arrow{display:none}}
