:root{--paper:#f5eddf;--ink:#47362b;--muted:#92836f;--line:#dcd1bc;--green:#a65d45;--sage:#e9deca;--red:#ac6049}
html{scroll-behavior:smooth}body{background:var(--paper);font-size:15px}body:after{opacity:.055}[hidden]{display:none!important}.skip-link{position:absolute;left:15px;top:-60px;padding:10px;background:#fff;z-index:100}.skip-link:focus{top:10px}.experience-main{margin:0}.site-header{max-width:1440px;margin:0 auto;height:105px;display:flex;align-items:center;justify-content:space-between;padding:0 6.4%;position:relative;z-index:3}.wordmark strong{display:block;font:600 30px/1.1 var(--serif);letter-spacing:3px}.wordmark strong span{font-size:15px;color:var(--red);letter-spacing:0}.wordmark small{display:block;font:8px/1.2 Georgia;letter-spacing:2px;margin-top:7px}.site-header nav{display:flex;align-items:center;gap:25px}.header-link{font:14px var(--serif);display:flex;align-items:center;gap:7px}.header-link svg{width:15px;height:15px}.round-add{width:40px;height:40px;border:1px solid #9a644a;border-radius:50%;display:grid;place-items:center;color:var(--red)}.round-add:hover{background:#a35f4810;transform:rotate(90deg)}.round-add svg{width:22px;height:22px}.header-settings{color:#9a8b76;margin-left:-13px}.memory-stage{max-width:1440px;margin:0 auto;min-height:calc(100svh - 105px);position:relative;padding:11px 6.4% 26px;display:flex;flex-direction:column;background:radial-gradient(ellipse at 62% 15%,#fff9e98c 0,transparent 48%),radial-gradient(ellipse at 21% 66%,#dcc5a326 0,transparent 48%)}.memory-topline{display:flex;align-items:center;justify-content:space-between;color:#81694f;font:13px var(--serif);letter-spacing:1px}.memory-topline>span{display:flex;align-items:center;gap:11px}.memory-topline i{display:block;width:24px;height:1px;background:#ad7456}.memory-topline small{font:8px Georgia;letter-spacing:1.9px;color:#a39884;margin-left:10px}.memory-topline time{font:13px Georgia;letter-spacing:1.1px}.hero-body{position:relative;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;margin-top:8px;min-height:570px}.hero-stage.viewer-stage{width:100%;height:365px;flex-shrink:0;max-width:900px;background:none;perspective:1300px;overflow:visible;touch-action:pan-y}.hero-ticket-object.ticket-object{width:min(77%,675px);height:300px}.hero-ticket-object .ticket-face{filter:drop-shadow(4px 21px 12px #56452e28)}.hero-ticket-object img{border-radius:8px;max-width:100%;max-height:100%}.hero-ticket-object .paper-image{mix-blend-mode:multiply}.margin-writing{position:absolute;right:0;top:90px;writing-mode:vertical-rl;font:13px/1.9 var(--serif);letter-spacing:5px;color:#9b8c74}.hero-memory-info{text-align:center;max-width:700px;padding:0 20px}.hero-type{font-size:10px;color:#9a8b75;letter-spacing:2px;margin-bottom:8px}.hero-type span{font-size:9px;letter-spacing:1px;color:#ac9d85}.hero-memory-info h1{font:500 42px/1.4 var(--serif);letter-spacing:5px;color:#473128}.hero-metadata{font:14px/1.7 var(--serif);letter-spacing:.8px;color:#8f7358;margin-top:7px}.hero-reflection{font:17px/1.9 var(--serif);color:#705843;letter-spacing:1.1px;max-width:510px;margin:19px auto 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap}.open-memory{margin-top:22px;display:inline-flex;align-items:center;gap:14px;font:14px var(--serif);color:#a2563d;border-bottom:1px solid #b98368;padding:7px 0}.open-memory:hover{color:#733e2d;gap:20px}.open-memory svg{width:15px;height:15px}.memory-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:33px;padding-top:20px;position:relative}.memory-number{font:13px Georgia;letter-spacing:2px;color:#91755c}.memory-number i{font-style:normal;opacity:.5;margin:0 5px}.memory-bottom>button{display:flex;align-items:center;gap:10px;font:13px var(--serif);color:#806750;padding:8px 0}.memory-bottom>button:hover{color:#ad563e}.memory-bottom svg{width:15px;height:15px}.scroll-invite{font-size:12px!important}.scroll-invite svg{width:13px!important;height:19px!important}.collection{border-top:1px solid var(--line);padding:65px 6.4% 48px;max-width:1440px;margin:35px auto 0;background:linear-gradient(#ede2cf40,transparent)}.collection-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.eyebrow{color:#a29177;font-size:9px}.collection-heading h2{font:500 31px/1.6 var(--serif);letter-spacing:2px}.collection-heading h2 span{color:#ad6d4d}.collection-heading p{font:13px var(--serif);color:#9a8970;margin-top:7px;letter-spacing:1px}.text-button{font-size:12px;display:inline-flex;align-items:center;gap:7px;color:#8f755b;text-decoration:none}.text-button svg{width:15px;height:15px}.text-button:hover{color:#a65b42}.collection-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:22px}.search-box{height:40px;background:#faf5e966;border-color:#d9cdb6;width:355px;color:#9d8a70}.search-box input{font-size:12px;width:100%;min-width:0;color:#47362b}.search-box input::placeholder{color:#a29178}.search-box:focus-within{outline-color:#c3a68b}.filter-button{height:40px;font-size:12px;border-color:#d9cdb6}.collection-toolbar .sort-label{margin-left:auto;align-self:center}.sort-label select{color:#8a775f;font-size:12px;max-width:140px}.advanced-filters{background:#e9dfcb}.advanced-filters label{font-size:12px}.advanced-filters select{background:#f7efdf;border-color:#d4c7af;color:#6c5941}.collection .category-tabs{gap:27px;margin:28px 0 22px;border-bottom:1px solid var(--line)}.category-tab{font-size:13px;color:#95836a}.category-tab.active{color:#9d573d}.category-tab.active:after{background:#a85b42}.category-tab small{font-size:11px}.folder-archive{display:flex;align-items:stretch;width:100%;height:500px;padding-top:17px;overflow:hidden;border-radius:3px;position:relative}.archive-folder{display:flex;flex:0 0 83px;min-width:0;background:var(--folder-paper);position:relative;box-shadow:-7px 0 13px #423c2721;border-radius:4px 20px 0 0;transition:flex-basis .55s cubic-bezier(.2,.7,.2,1);border-left:1px solid #8e806535;border-top:1px solid #8e806545;overflow:hidden;transform:translateY(calc(var(--folder-index) * 0px));color:var(--folder-ink,#484b38)}.archive-folder::after{content:'';position:absolute;inset:0;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 180 180'%3E%3Cfilter id='x'%3E%3CfeTurbulence baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23x)'/%3E%3C/svg%3E")}.folder-movie{--folder-paper:#dbd7bf;--folder-ink:#51523d}.folder-theater{--folder-paper:#e9ddbf;--folder-ink:#72604a}.folder-exhibition{--folder-paper:#c5ccca;--folder-ink:#455751}.folder-live{--folder-paper:#b1a17f;--folder-ink:#4f4533}.folder-other{--folder-paper:#807e66;--folder-ink:#f4ecda}.archive-folder.expanded{flex-basis:calc(100% - 332px);box-shadow:-5px 0 12px #423c2710}.folder-tab{display:flex;flex-direction:column;align-items:center;width:83px;flex:0 0 83px;padding:26px 12px 22px;position:relative;z-index:1;overflow:hidden}.folder-tab:hover{background:#fffaf213}.folder-tab:focus-visible{outline:2px solid #a76848;outline-offset:-5px}.folder-code{writing-mode:vertical-rl;font:10px Georgia;letter-spacing:2px;margin-bottom:23px}.folder-name{font:500 28px/1.4 var(--serif);writing-mode:vertical-rl;letter-spacing:10px}.folder-en{font:9px/1.3 Georgia;writing-mode:vertical-rl;letter-spacing:2px;opacity:.65;margin-top:17px;max-height:114px}.folder-total{margin-top:auto;font:23px Georgia;opacity:.8}.folder-body{width:0;min-width:0;overflow:hidden;opacity:0;transition:opacity .25s;flex:1}.expanded .folder-body{opacity:1;transition:opacity .4s .2s}.folder-inner{height:100%;padding:29px 28px 17px 15px;display:flex;flex-direction:column;min-width:240px}.folder-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid #8274533b}.folder-heading small{font:8px Georgia;letter-spacing:1.8px;opacity:.6}.folder-heading h3{font:24px var(--serif);margin-top:10px}.folder-heading h3 span{font:12px Georgia;opacity:.55;margin-left:6px}.folder-private{font-size:10px;display:flex;gap:6px;align-items:center;opacity:.5}.folder-private svg{width:12px;height:12px}.folder-tickets{display:flex;flex-direction:column;gap:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#998b69 transparent;padding-right:9px;flex:1}.folder-ticket{display:flex;align-items:center;gap:23px;border-bottom:1px solid #82745329;padding:20px 2px;text-align:left;width:100%;flex-shrink:0}.folder-ticket:hover{background:#fff9e92b}.folder-ticket-img{width:45%;max-width:245px;flex-shrink:0;mix-blend-mode:multiply;transform:rotate(-3deg);transition:transform .3s}.folder-ticket:hover .folder-ticket-img{transform:rotate(0) translateY(-3px)}.folder-ticket img{width:100%;max-height:100px;object-fit:contain;filter:drop-shadow(0 5px 4px #41352020);display:block}.folder-ticket h4{font:17px var(--serif);margin:0 0 6px}.folder-ticket p{font:11px/1.5 Georgia,var(--serif);opacity:.65}.folder-ticket>div:nth-child(2){min-width:0;flex:1}.folder-ticket>div>span{font:12px/1.8 var(--serif);opacity:.68;margin-top:9px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.folder-ticket>svg{width:14px;height:14px;opacity:.65;margin-left:auto;flex-shrink:0}.folder-bottom{font:8px Georgia;letter-spacing:1.3px;opacity:.6;padding-top:18px;display:flex;align-items:center;justify-content:space-between}.folder-bottom span{font:10px var(--serif);letter-spacing:.6px}.folder-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;flex:1;font:16px var(--serif)}.folder-empty .text-button{color:inherit;opacity:.65}.ticket-card{border-color:#ded0b6;background:#f7f0e2}.ticket-visual{height:170px;padding:23px;mix-blend-mode:multiply}.ticket-meta{font-size:11px}.ticket-meta time{font-size:11px}.ticket-info h3{font-size:18px}.ticket-location{font-size:11px;color:#9c886c}.ticket-foot{font-size:11px;border-color:#dfd0b6}.ticket-type svg{width:12px;height:12px}.ticket-info{padding:17px}.site-footer{max-width:1440px;margin:0 auto;border-top:1px solid var(--line);padding:29px 6.4% 35px;display:flex;align-items:center;justify-content:space-between;color:#98846a}.site-footer>a{font:20px var(--serif);display:flex;align-items:center;gap:10px}.site-footer>a span{font:8px Georgia;letter-spacing:1.5px}.site-footer p{font:13px var(--serif);letter-spacing:3px}.site-footer button{font-size:10px;display:flex;gap:7px;align-items:center;color:#ac9a81}.site-footer button svg{width:11px;height:11px}.empty-memory{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;text-align:center;padding:80px 20px}.empty-memory h1{font:40px/1.5 var(--serif);letter-spacing:2px}.empty-memory p{font:16px/1.8 var(--serif);color:#9b8469}.button{font-size:13px;border-color:#d8c9af;border-radius:4px}.button.primary{background:#a65d45;border-color:#a65d45;color:#fff7e8}.button.primary:hover{background:#8e4834}.button:hover{background:#eaddc6}.danger-fill{background:#a95c46;color:#fff7e8;border-color:#a95c46}input:focus,textarea:focus,select:focus{outline-color:#c5ab89}button:focus-visible,a:focus-visible{outline-color:#bd916d}.toast{left:50%;background:#584532;color:#fff6e5;font-size:13px}.empty-state{border-color:#c8b598}.empty-state p{font-size:13px}.empty-state .empty-flower{color:#b29670}dialog{background:#f7efe1;border-color:#d7c7a9;width:min(940px,calc(100% - 40px))}dialog::backdrop{background:#3f34266e;backdrop-filter:blur(6px)}.modal-header{padding:23px 28px}.modal-header h2{font-size:24px}.modal-footer{background:#f0e5d2;border-color:#decfb5;padding:18px 26px}.modal-footer p{font-size:11px}.modal-body{padding:28px}.icon-button:hover{background:#eaddc6}.form-caption{font-size:13px;color:#948069}.form-field{font-size:13px}.form-field input,.form-field select,.form-field textarea{background:#fcf6ea;border-color:#dccaac;font-size:14px}.form-field input::placeholder,.form-field textarea::placeholder{color:#b2a18a}.step{font-size:12px;color:#ac997c}.step b{border-color:#d4c3a7}.step.active{color:#a15b40}.step.active b{background:#a15b40;border-color:#a15b40}.step-line{background:#d8c7a8}.upload-zone{background:#f0e6d4;border-color:#c8b18c}.upload-zone.dragover{background:#e7d5b4;border-color:#a8754e}.upload-zone svg{color:#a58c64}.upload-zone p{font-size:13px}.upload-zone small{font-size:11px;color:#ac9777}.upload-label{font-size:13px}.upload-label small{font-size:11px}.soft-note{background:#eee2cc;font-size:12px;color:#947a55}.check-label{color:#947953;font-size:12px}.check-label input,.radio-option input{accent-color:#a15b40}.photo-add{border-color:#c8b491;background:#eee2cc}.photo-add input:focus{outline:0}.photo-add:focus-within{outline:2px solid #b58961}.detail-layout{grid-template-columns:1.1fr 1fr}.detail-viewer{background:radial-gradient(ellipse at 25% 30%,#fffaed,#eaddc3);border-color:#d9c9aa}.viewer-stage{height:325px;background:none}.ticket-object{height:240px}.ticket-face{filter:drop-shadow(0 16px 10px #48361d29)}.viewer-hint{color:#ad9774;font-size:11px}.viewer-controls .button,.viewer-controls .icon-button{border-color:#caba98;color:#8e7856;font-size:12px}.viewer-controls .button.active{background:#d9c5a2;border-color:#cdb48c}.gyro-button{color:#997e52;border-color:#cbb591;font-size:11px}.gyro-status{color:#9e8761}.viewer-note{border-color:#d0bc98;color:#a08761;font-size:14px}.detail-info{padding:28px;max-height:65dvh}.detail-type{font-size:12px;color:#a48b67}.detail-info h3{font-size:29px}.detail-date{font-size:14px}.detail-facts{font-size:12px;color:#978265}.demo-badge{font-size:10px;border-color:#dbc9a9;color:#a8906b}.memory-section{border-color:#dac9a9}.memory-section h4{color:#a18d6f;font-size:12px}.memory-section p{font-size:16px;line-height:1.9}.detail-companion{font-size:14px!important}.detail-empty{color:#b6a589}.detail-photos button{padding:0}.back-placeholder{background:#eee2ca;border-color:#d5c4a3;color:#aa9675}.back-placeholder small{color:#b49f7d}.share-canvas-wrap{background:#e8dcc3}.share-options p{color:#a08a67;font-size:12px}.share-options h3{font-size:21px}.radio-option{font-size:13px}.share-options .button{font-size:12px}.setting-intro{background:#eee2cc}.setting-intro li,.setting-row p{color:#9a8360;font-size:12px}.setting-row{border-color:#dfceb0}.setting-row h3{font-size:18px}.import-backup-label{cursor:pointer;position:relative;overflow:hidden}.import-backup-label:focus-within{outline:2px solid #b58961}.photo-full{padding:20px;text-align:center}.photo-full img{max-width:100%;max-height:65dvh;object-fit:contain}.error-message{font-size:13px}.danger-button{font-size:12px}
@media(min-width:1500px){.hero-stage.viewer-stage{height:405px}.hero-ticket-object.ticket-object{width:710px;height:335px}.hero-body{min-height:620px}.hero-memory-info h1{font-size:46px}.folder-archive{height:530px}}
@media(max-width:1100px){.site-header{padding:0 5%;height:92px}.memory-stage{padding:9px 5% 26px;min-height:calc(100svh - 92px)}.hero-stage.viewer-stage{height:345px}.hero-ticket-object.ticket-object{width:74%;height:270px}.hero-body{min-height:540px}.collection{padding:50px 5% 40px}.folder-tab{width:69px;flex-basis:69px}.archive-folder{flex-basis:69px}.archive-folder.expanded{flex-basis:calc(100% - 276px)}.folder-inner{padding:25px 21px 18px 8px}.folder-ticket{gap:13px}.folder-ticket h4{font-size:16px}.folder-ticket>div>span{font-size:11px}.folder-ticket-img{width:43%}.folder-private{display:none}.folder-bottom span{display:none}.folder-tickets{padding-right:4px}.ticket-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ticket-visual{height:150px}.site-footer{padding:25px 5%}.site-footer p{font-size:12px}.site-footer button{font-size:9px}.share-layout{grid-template-columns:1fr 230px}}
@media(max-width:760px){.site-header{height:82px;padding:0 24px}.wordmark strong{font-size:27px}.wordmark small{font-size:7px;letter-spacing:1.5px}.site-header nav{gap:16px}.header-link{font-size:13px}.header-link svg{width:12px;height:12px}.round-add{width:34px;height:34px}.round-add svg{width:19px;height:19px}.header-settings{display:none}.memory-stage{padding:7px 24px 22px;min-height:calc(100svh - 82px);overflow:hidden}.memory-topline{font-size:12px;letter-spacing:.5px}.memory-topline i{width:20px}.memory-topline small{display:none}.memory-topline time{font-size:12px;letter-spacing:.7px}.hero-body{min-height:485px;justify-content:center;margin-top:0}.hero-stage.viewer-stage{height:270px;width:calc(100% + 30px);margin:5px -15px 0;perspective:900px}.hero-ticket-object.ticket-object{width:96%;height:200px}.hero-ticket-object img{border-radius:3px}.hero-ticket-object .ticket-face{filter:drop-shadow(0 15px 9px #53402b28)}.margin-writing{right:0;top:29px;font-size:10px;letter-spacing:3px;line-height:1.8;opacity:.65}.hero-memory-info{padding:0 8px;width:100%}.hero-type{font-size:10px;letter-spacing:1px;margin-bottom:6px}.hero-type span{font-size:9px}.hero-memory-info h1{font-size:33px;letter-spacing:3px;line-height:1.4}.hero-metadata{font-size:12px;letter-spacing:.3px;line-height:1.9;margin-top:6px}.hero-reflection{font-size:15px;line-height:1.9;letter-spacing:.7px;margin:17px auto 0;max-width:320px}.open-memory{font-size:13px;margin-top:19px;padding-bottom:8px;gap:11px}.memory-bottom{margin-top:23px;padding-top:17px;gap:10px}.memory-number{font-size:11px;letter-spacing:.5px}.memory-number i{margin:0 3px}.memory-bottom>button{font-size:12px;gap:6px}.scroll-invite{font-size:10px!important;gap:4px!important}.scroll-invite span{max-width:none;line-height:1.7;text-align:left;white-space:nowrap}.scroll-invite svg{width:11px!important}.collection{padding:39px 21px 33px;margin-top:15px}.collection-heading{margin-bottom:25px;gap:10px;align-items:end}.collection-heading h2{font-size:25px;letter-spacing:1px}.collection-heading .eyebrow{font-size:7px;letter-spacing:1.7px}.collection-heading p{font-size:12px;margin-top:6px}.collection-heading .text-button{font-size:11px;margin-bottom:3px;gap:5px;white-space:nowrap}.collection-heading .text-button svg{width:13px;height:13px}.collection-toolbar{gap:8px;flex-wrap:nowrap;margin-bottom:18px}.collection-toolbar .search-box{height:39px;flex:1;width:auto;min-width:0}.search-box input{font-size:11px}.filter-button{height:39px;padding:0 10px;font-size:11px}.collection-toolbar .sort-label{display:none}.advanced-filters{padding:12px;gap:10px}.advanced-filters label{font-size:11px}.advanced-filters select{font-size:12px}.folder-archive{flex-direction:column;height:auto;overflow:visible;padding-top:0;gap:0;display:flex}.archive-folder{flex:0 0 auto!important;flex-direction:column;width:100%;border-radius:3px 17px 0 0;box-shadow:0 -5px 9px #4b3d2116;border-top:1px solid #91836350;border-left:1px solid #91836330;margin-top:-2px;transition:background .3s}.archive-folder:first-child{margin-top:0}.folder-tab{width:100%;height:69px;flex-basis:69px;flex-direction:row;padding:14px 20px;gap:17px;text-align:left}.folder-code{writing-mode:horizontal-tb;margin:0;font-size:9px;letter-spacing:1px;max-width:36px;line-height:1.9}.folder-name{writing-mode:horizontal-tb;font-size:24px;letter-spacing:3px}.folder-en{writing-mode:horizontal-tb;font-size:8px;letter-spacing:1px;margin:0;opacity:.6}.folder-total{font-size:21px;margin:0 0 0 auto}.folder-body{width:100%;height:0;flex:none;opacity:0;transition:height .4s,opacity .3s}.expanded .folder-body{height:383px;opacity:1}.folder-inner{padding:0 20px 16px;min-width:0}.folder-heading{display:none}.folder-tickets{padding:0 0 0 0;border-top:1px solid #82745329}.folder-ticket{padding:18px 0;gap:17px}.folder-ticket-img{width:43%;max-width:none}.folder-ticket img{max-height:100px}.folder-ticket h4{font-size:16px;line-height:1.5}.folder-ticket p{font-size:10px;margin-top:4px}.folder-ticket>div>span{font-size:11px;margin-top:5px;line-height:1.7;-webkit-line-clamp:2}.folder-ticket>svg{width:12px;height:12px;margin-left:0}.folder-bottom{padding-top:17px;font-size:8px}.collection .category-tabs{gap:21px;overflow-x:auto;margin-top:23px}.category-tab{font-size:12px;gap:4px}.category-tab small{font-size:10px}.ticket-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.ticket-visual{padding:13px;height:133px}.ticket-info{padding:12px}.ticket-info h3{font-size:15px}.ticket-meta time{font-size:10px}.ticket-type{font-size:9px}.ticket-location{font-size:10px}.ticket-foot{font-size:9px}.site-footer{padding:24px 22px 30px;flex-wrap:wrap;gap:18px}.site-footer>a{font-size:21px}.site-footer>a span{font-size:7px}.site-footer p{font-size:11px;letter-spacing:2px;margin-left:auto}.site-footer button{font-size:10px;width:100%;justify-content:center;margin-top:9px}.empty-memory h1{font-size:31px}.empty-memory p{font-size:13px}.empty-memory .eyebrow{font-size:8px}.toast{bottom:28px;font-size:12px;width:max-content;max-width:90vw}.detail-layout{grid-template-columns:1fr}.detail-info{padding:23px;max-height:none}.detail-viewer{border:0;border-bottom:1px solid #d8c5a3}.viewer-stage{height:243px}.ticket-object{height:195px}.viewer-controls .button{font-size:11px;padding:6px 12px}.viewer-hint{font-size:10px}.gyro-button{font-size:11px}.modal-header{padding:18px 20px}.modal-header h2{font-size:22px}.modal-body{padding:23px 20px}.modal-footer{padding:17px 19px}.modal-footer .button{font-size:12px}.modal-footer p{font-size:10px;max-width:110px}.form-field input,.form-field select,.form-field textarea{font-size:16px;padding:10px}.form-field{font-size:12px}.step{font-size:10px}.form-caption{font-size:12px}.upload-zone p{font-size:11px}.upload-zone small{font-size:9px}.upload-zone{height:163px}.upload-label{font-size:12px}.upload-label small{font-size:10px}.soft-note{font-size:11px}.share-layout{grid-template-columns:1fr}.share-options .radio-option{font-size:11px}.share-options p{font-size:12px}.share-options .button{font-size:11px}.share-options .check-label{font-size:12px}.setting-row .button{font-size:11px;padding:9px}.setting-row p{font-size:11px}.setting-row h3{font-size:17px}.setting-intro li{font-size:12px}.photo-full{padding:12px}.viewer-note{display:none}dialog{width:calc(100% - 16px);max-height:94dvh}.share-canvas-wrap{max-height:49dvh}.danger-button{font-size:12px}.detail-photos img{width:76px;height:76px}}
@media(max-width:380px){.site-header{padding:0 19px}.memory-stage{padding-left:19px;padding-right:19px}.hero-stage.viewer-stage{height:245px}.hero-ticket-object.ticket-object{height:170px}.hero-body{min-height:464px}.hero-memory-info h1{font-size:30px}.hero-reflection{font-size:14px}.hero-metadata{font-size:11px}.collection{padding-left:16px;padding-right:16px}.folder-tab{gap:12px;padding-left:17px;padding-right:17px}.folder-name{font-size:22px}.folder-en{font-size:7px}.folder-inner{padding-left:17px;padding-right:17px}.folder-ticket{gap:12px}.ticket-visual{height:114px}.ticket-info{padding:10px}.ticket-info h3{font-size:14px}.ticket-foot{font-size:9px}.collection-heading .text-button{font-size:10px}.memory-number{font-size:10px}.collection-heading h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.archive-folder,.folder-body{transition:none}.hero-ticket-object{transition:none}}
/* Keep the scan intact while letting its white margins sit naturally on paper. */
.viewer-stage{mix-blend-mode:multiply}
/* Continuous accordion motion: panel nodes stay mounted throughout switching. */
.archive-folder{transition:flex-basis 620ms cubic-bezier(.22,.72,.16,1),box-shadow 620ms ease}
.folder-body{opacity:1;transition:none}
.expanded .folder-body{transition:none}
.folder-inner{width:var(--folder-content-width);min-width:0}
.folder-heading,.folder-bottom{opacity:0;transform:translateX(14px);transition:opacity 160ms ease,transform 340ms ease}
.expanded .folder-heading,.expanded .folder-bottom{opacity:1;transform:translateX(0);transition:opacity 360ms ease 160ms,transform 580ms cubic-bezier(.22,.72,.16,1) 100ms}
.expanded .folder-bottom{opacity:.6}
.folder-ticket{opacity:0;transform:translateX(20px);transition:opacity 120ms ease,transform 240ms ease}
.expanded .folder-ticket{opacity:1;transform:translateX(0);transition:opacity 360ms ease,transform 600ms cubic-bezier(.22,.72,.16,1);transition-delay:calc(130ms + var(--ticket-index,0)*45ms)}
.folder-tab .folder-total{transition:opacity 350ms ease,transform 500ms cubic-bezier(.22,.72,.16,1)}
.archive-folder:not(.expanded) .folder-total{opacity:.55;transform:translateY(3px)}
.hero-stage.viewer-stage{touch-action:pan-y;cursor:default;overflow:visible}
.ticket-object{touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none;transform-style:preserve-3d}
.is-dragging .ticket-object{cursor:grabbing}
.ticket-face{filter:drop-shadow(var(--shadow-x,0px) 16px 10px #48361d29)}
.hero-ticket-object .ticket-face{filter:drop-shadow(var(--shadow-x,4px) 21px 12px #56452e28)}
.hero-ticket-object .back-placeholder{height:100%;max-height:270px;font-size:22px;letter-spacing:2px;background:#eee2cb}
.hero-viewer-tools{position:relative;text-align:center;margin:-7px 0 19px;color:#a38b6c;z-index:1}
.hero-viewer-tools>p{font:11px/1.7 var(--serif);letter-spacing:.7px;margin:0 0 8px}
.hero-viewer-controls{display:inline-flex;align-items:center;gap:3px;padding:3px 5px;border:1px solid #c9b48e55;border-radius:30px;background:#f7efdf80}
.hero-viewer-controls button{height:30px;min-width:32px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;border-radius:20px;padding:0 10px;color:#9f8663;transition:background .2s,color .2s}
.hero-viewer-controls button:hover{background:#e8d8bb70;color:#775736}
.hero-viewer-controls button.active,.hero-viewer-controls button[aria-pressed="true"]{background:#ddc7a370;color:#765837}
.hero-viewer-controls svg{width:13px;height:13px}
.control-divider{width:1px;height:13px;background:#c9b48e66;margin:0 3px}
#hero-gyro-status:empty{display:none}
#hero-gyro-status{margin:8px 0 0;font-size:11px}
.hero-memory-info{position:relative;z-index:1}
.hero-body{padding-top:8px}
@media(max-width:760px){
  .archive-folder{transition:box-shadow 620ms ease}
  .folder-body{height:0;opacity:1;transition:height 620ms cubic-bezier(.22,.72,.16,1)}
  .expanded .folder-body{height:383px;transition:height 620ms cubic-bezier(.22,.72,.16,1)}
  .folder-inner{height:383px;width:100%;min-width:0}
  .folder-heading,.folder-bottom{transform:translateY(10px)}
  .expanded .folder-heading,.expanded .folder-bottom{transform:translateY(0)}
  .folder-ticket{transform:translateY(16px)}
  .expanded .folder-ticket{transform:translateY(0)}
  .hero-viewer-tools{margin:-8px 0 16px}
  .hero-viewer-tools>p{font-size:10px;letter-spacing:0}
  .hero-viewer-controls button{min-width:34px;height:32px}
  .hero-ticket-object .back-placeholder{max-height:167px;font-size:17px}
  .hero-ticket-object .back-placeholder small{font-size:10px;letter-spacing:0}
  .hero-body{padding-top:0}
}
@media(prefers-reduced-motion:reduce){.archive-folder,.folder-body,.folder-ticket,.folder-heading,.folder-bottom,.folder-total{transition:none!important}}

/* Personal notes sit on their own small paper slip. */
.header-collect{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border:1px solid #b78b6a80;border-radius:5px;background:#eadac04d;color:#955d43;font:13px var(--serif);white-space:nowrap;transition:background .2s,border-color .2s}
.header-collect:hover{background:#e8d5b9;border-color:#a77453}
.header-collect svg{width:19px;height:19px}
.memory-note{position:relative;margin:29px auto 0;padding:27px 25px 17px;max-width:490px;text-align:left;background:linear-gradient(110deg,#fff9ecaa,#efe0c36b);border:1px solid #bba17b20;box-shadow:1px 5px 12px #6e54330b;transform:rotate(-.6deg)}
.memory-note:before{content:"";position:absolute;top:-8px;right:29px;width:58px;height:18px;background:#b5b69240;transform:rotate(7deg);border-left:1px dashed #a0a17d40;border-right:1px dashed #a0a17d40}
.memory-note-label{position:absolute;left:19px;top:-11px;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#e4d4b5;color:#826e51;font:11px/1.4 var(--serif);letter-spacing:1px;transform:rotate(-2deg)}
.memory-note-label svg{width:12px;height:12px}
.memory-note .hero-reflection{margin:0;max-width:none;font-size:15px;line-height:1.95;letter-spacing:.6px;-webkit-line-clamp:3}
.memory-bottom .scroll-invite{white-space:nowrap;flex-shrink:0}
.memory-bottom .scroll-invite span{max-width:none}
@media(max-width:760px){
 .site-header nav{gap:15px}
 .header-collect{font-size:12px;padding:8px 10px;gap:5px}
 .memory-note{margin-top:28px;padding:25px 19px 16px;max-width:360px}
 .memory-note .hero-reflection{font-size:14px}
}
@media(max-width:380px){.site-header nav{gap:10px}.header-collect{padding:7px;font-size:11px}.header-collect svg{width:16px}.header-link{font-size:12px}}

/* Brand lockup: a quiet masthead and the way back to a memory. */
.wordmark{flex-shrink:0}
.wordmark strong{font-size:29px;letter-spacing:4px;white-space:nowrap}
.wordmark small{font:10px/1.6 var(--serif);letter-spacing:1.1px;color:#947858;margin-top:8px;white-space:nowrap}
.site-footer>a{white-space:nowrap}
@media(max-width:760px){
 .wordmark strong{font-size:25px;letter-spacing:3px}
 .wordmark small{font-size:9px;letter-spacing:.4px;margin-top:6px}
 .site-footer p{letter-spacing:1px}
}
@media(max-width:380px){
 .wordmark strong{font-size:22px;letter-spacing:2px}
 .wordmark small{font-size:8px;letter-spacing:0}
 .site-header{padding-left:18px;padding-right:18px}
 .site-footer>a span{display:block;margin:6px 0 0}
 .site-footer p{font-size:10px;letter-spacing:0}
}

.recognition-panel{margin:20px 0 25px;padding:18px 20px;background:#e3e5d65c;border:1px solid #9a9f792b;border-radius:5px}
.recognition-heading{display:flex;align-items:center;gap:8px;color:#657258}
.recognition-heading svg{width:19px;height:19px}
.recognition-heading strong{font:17px var(--serif)}
.recognition-panel p{font-size:12px;line-height:1.8;color:#88785f;margin:8px 0}
.recognition-panel .recognition-status{color:#666c54}
.recognition-panel small{display:block;margin-top:11px;font-size:10px;line-height:1.8;color:#978a75}
.recognition-panel button{font-size:12px;padding:8px 13px}
.recognition-panel button:disabled{opacity:.55;cursor:progress}
.recognition-choice{margin:20px 0}
.recognition-choice p{font-size:11px;line-height:1.8;color:#978a75;margin:8px 0 0;text-align:left}
.extraction-previews{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:0 0 26px}
.extracted-side{border:1px solid #ac977447;padding:13px;border-radius:5px}
.extracted-side header{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#74664f}
.extracted-side header span{font-size:10px;color:#97876f}
.extracted-image{min-height:135px;display:flex;align-items:center;justify-content:center;padding:14px;margin-top:9px;background:repeating-conic-gradient(#ded5c333 0% 25%,transparent 0% 50%) 0 0/16px 16px}
.extracted-image img{max-width:100%;max-height:195px;object-fit:contain;filter:drop-shadow(2px 4px 4px #40382020)}
.extraction-actions{display:flex;justify-content:space-between;margin-top:12px;gap:12px}
.extraction-actions button{font-size:11px}
.crop-editor{margin:0 0 26px;padding:18px;background:#e6dec84d;border:1px solid #ac977447;border-radius:5px}
.crop-editor h4{font:18px var(--serif);color:#67543e}
.crop-editor p{font-size:11px;line-height:1.8;color:#8f7a5d;margin:8px 0 16px}
.crop-source{position:relative;margin:24px auto;max-width:480px;user-select:none}
.crop-source>img{display:block;width:100%;height:auto;pointer-events:none}
.crop-source>svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.crop-mask{fill:#221e1990;stroke:#f4e2ba;stroke-width:3}
.crop-handle{position:absolute;transform:translate(-50%,-50%);width:30px;height:30px;border:2px solid #fff6e3;border-radius:50%;background:#a85f43;color:white;font-size:12px;display:grid;place-items:center;touch-action:none;cursor:move;box-shadow:0 2px 5px #38231144}
.crop-handle:focus-visible{outline:3px solid #586447;outline-offset:2px}
.crop-editor-actions{display:flex;justify-content:space-between;gap:12px;margin-top:24px}
.crop-editor-actions .button{font-size:12px;padding:9px 13px}
/* An entry in a personal notebook, with space to write between fine rules. */
.ticket-form .form-grid{gap:26px 30px;padding:7px 0 5px}
.ticket-form .form-field{gap:5px;min-width:0}
.ticket-form .form-field>span,.companion-picker legend{font:12px/1.5 var(--serif);letter-spacing:1.3px;color:#9b8163}
.ticket-form .form-field input,.ticket-form .form-field select,.ticket-form .form-field textarea{border:0;border-bottom:1px solid #bba48470;border-radius:0;background:transparent;box-shadow:none;padding:10px 0 12px;color:#584430;font:16px/1.6 var(--serif);transition:border-color .25s,background-color .25s;outline:none;min-width:0;color-scheme:light}
.ticket-form .form-field input:focus,.ticket-form .form-field select:focus{border-bottom-color:#9c5d43;background:linear-gradient(0deg,#dfc6a422,transparent 70%)}
.ticket-form .form-field input:focus-visible,.ticket-form .form-field select:focus-visible{box-shadow:0 1px 0 #9c5d43}
.ticket-form .form-field input::placeholder,.ticket-form .form-field textarea::placeholder{color:#b4a18a;font-weight:400}
.ticket-form .form-field textarea{min-height:150px;padding:5px 0 0;line-height:34px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 33px,#bba48447 33px,#bba48447 34px);background-position:0 5px;border:0;resize:vertical}
.ticket-form .form-field textarea:focus-visible{box-shadow:-2px 0 0 #ac7b5680;padding-left:10px}
.ticket-form .form-lead{font-size:25px;letter-spacing:1px}
.ticket-form .form-caption{margin-bottom:26px}
.ticket-form .rating-input{border-bottom:1px solid #bba48447;padding:4px 0 10px;gap:10px}
.ticket-form .rating-star{font-size:23px}
.ticket-form .photo-add{border:1px dashed #bba48480;background:transparent;border-radius:0}
.companion-picker{border:0;padding:0;margin:0;min-width:0;grid-column:1/-1}
.companion-picker legend{padding:0;margin-bottom:14px}
.companion-options{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.companion-option{position:relative;cursor:pointer;min-width:0}
.companion-option>input{position:absolute;width:1px;height:1px;opacity:0;clip-path:inset(50%)}
.companion-ticket{display:flex;align-items:center;gap:12px;min-height:82px;padding:15px 18px;border:1px solid #b6a18345;background:#e9ddc533;color:#97866c;transition:background .3s,border-color .3s,transform .3s;position:relative;border-radius:2px 9px 2px 2px}
.companion-ticket>svg{width:23px;height:23px;flex-shrink:0}
.companion-ticket strong{display:block;font:18px/1.5 var(--serif);letter-spacing:1px;white-space:nowrap}
.companion-ticket small{display:block;font:10px/1.7 var(--serif);margin-top:3px;letter-spacing:.3px;white-space:nowrap;color:#a5947a}
.companion-ticket i{width:12px;height:12px;border:1px solid #b6a18370;border-radius:50%;margin-left:auto;flex-shrink:0}
.companion-option input:checked+.companion-ticket{border-color:#8b987478;background:#dce1cd70;color:#59664d;transform:rotate(-.5deg);box-shadow:1px 3px 6px #66533909}
.companion-option:nth-child(2) input:checked+.companion-ticket{transform:rotate(.5deg)}
.companion-option input:checked+.companion-ticket i{background:#778667;border:3px solid #e8e7d6;outline:1px solid #778667}
.companion-option input:focus-visible+.companion-ticket{outline:2px solid #927a56;outline-offset:3px}
.companion-option:hover .companion-ticket{border-color:#8b987478}
.companion-custom{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .4s cubic-bezier(.22,.72,.16,1),opacity .3s,margin-top .4s;margin-top:0}
.companion-custom>div{overflow:hidden;min-height:0}
.companion-picker[data-mode="together"] .companion-custom{grid-template-rows:1fr;opacity:1;margin-top:20px}
.ticket-form-step-3 .form-grid{gap:30px}
@media(max-width:760px){
 .ticket-form .form-grid{gap:22px 20px}
 .ticket-form .form-lead{font-size:23px}
 .ticket-form .form-field input,.ticket-form .form-field select,.ticket-form .form-field textarea{font-size:16px}
 .companion-ticket{padding:13px 12px;gap:8px;min-height:78px}
 .companion-ticket strong{font-size:16px;letter-spacing:.5px}
 .companion-ticket small{font-size:9px;letter-spacing:0}
 .companion-ticket>svg{width:18px;height:18px}
 .companion-ticket i{width:9px;height:9px}
}
@media(max-width:390px){.companion-options{gap:9px}.companion-ticket{padding:12px 10px;gap:7px}.companion-ticket>svg{display:none}.companion-ticket strong{font-size:15px}.companion-ticket small{font-size:9px}.ticket-form .form-grid{gap:21px 15px}}
@media(prefers-reduced-motion:reduce){.companion-custom,.companion-ticket{transition:none}}

/* Settings notes share the existing responsive text scale. */
.setting-notes{margin:0;padding-left:1.25em;list-style:disc}.setting-notes li{padding-left:3px}.setting-notes li+li{margin-top:8px}.setting-notes li::marker{color:#ad9470}

/* Counts read as quantities rather than archive sequence numbers. */
.folder-total{display:flex;align-items:baseline;gap:3px}
.folder-total b{font:inherit}
.folder-total small{font:9px var(--serif);letter-spacing:0}

/* Form menus live in the top layer so the scrolling form cannot clip them. */
.ticket-form .paper-picker-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;padding:11px 0 12px;border-bottom:1px solid #b5a18470;text-align:left;font:16px/1.5 var(--serif);color:#594331;border-radius:0}
.paper-picker-trigger svg{width:17px;height:17px;color:#957b5b;flex-shrink:0}.paper-picker-trigger.is-empty{color:#aa977c}.paper-picker-trigger:hover,.paper-picker-trigger[aria-expanded="true"]{border-color:#a65d45;background:#dfc9a414}
.paper-picker{position:fixed;inset:auto;margin:0;width:min(316px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;padding:19px;border:1px solid #d6c5a8;border-radius:4px 13px 5px 5px;color:#594331;background:linear-gradient(135deg,#fcf5e8,#f3e8d5);box-shadow:0 15px 45px #51402c2b,0 2px 5px #51402c10;font:14px/1.5 var(--serif)}
.paper-picker:popover-open{animation:paper-picker-in .18s ease-out}.paper-picker::backdrop{background:transparent}.paper-picker-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:17px;padding-bottom:13px;border-bottom:1px solid #cbb79870;font-size:17px}.paper-picker-heading small{display:block;font:8px/1.5 Georgia;letter-spacing:1.8px;color:#a68d6c;margin-top:6px}.paper-picker-heading>button{padding:4px;color:#a08b70}.paper-picker button:focus-visible,.paper-picker input:focus-visible{outline:2px solid #a38e66;outline-offset:2px}.paper-picker button:disabled{opacity:.3;cursor:default}
.paper-options{display:grid;gap:5px}.paper-options button{display:flex;align-items:center;gap:13px;padding:12px 10px;text-align:left;border-radius:3px}.paper-options small{margin-left:auto;font-size:10px;color:#a89373}.paper-options svg{color:#8b8869}.paper-picker button:hover{background:#e5dac33d}.paper-options button[aria-pressed="true"]{background:#dde0ca;color:#535e42}.paper-options button[aria-pressed="true"] small{color:#73835b}
.paper-calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:16px}.paper-calendar-heading>button{width:30px;height:32px;font:25px Georgia}.paper-calendar-heading label{display:flex;align-items:center;gap:3px}.paper-picker input{color:inherit;border:0;border-bottom:1px solid #c8b799;background:transparent;font:16px/1.5 Georgia;text-align:center;border-radius:0;padding:3px;appearance:textfield}.paper-picker input::-webkit-inner-spin-button{appearance:none}.paper-year{width:58px}.paper-week,.paper-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;gap:3px}.paper-week{font-size:10px;color:#9e8c70;margin-bottom:7px}.paper-days button{height:33px;border-radius:50%;font:13px Georgia;position:relative}.paper-days button[aria-pressed="true"]{color:#fff8e9;background:#a65d45}.paper-days button[aria-current="date"]:after{content:'';position:absolute;bottom:3px;left:calc(50% - 1.5px);width:3px;height:3px;border-radius:50%;background:currentColor}.paper-picker-foot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #cbb79870;padding-top:11px;margin-top:16px;gap:12px}.paper-picker-foot button{padding:6px 2px;color:#9c7958;font-size:12px}.paper-picker-foot .paper-confirm{color:#9e533b}
.paper-time-value{display:flex;align-items:center;justify-content:center;gap:17px;margin-bottom:12px}.paper-time-value label{display:flex;flex-direction:column;align-items:center;gap:4px;color:#9b8667;font-size:11px}.paper-time-value input{width:65px;font:30px/1.4 Georgia;color:#6c5039}.paper-time-value>span{font:26px Georgia;color:#b69c78;margin-top:15px}.paper-picker-caption{color:#a18c6d;font-size:11px;text-align:center;margin:9px 0 14px}.paper-hours{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.paper-hours button{font:13px Georgia;padding:8px 0;border-radius:2px}.paper-minutes{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px dashed #cbb79870}.paper-minutes button{flex:1;font:13px Georgia;padding:7px 0}.paper-hours button[aria-pressed="true"],.paper-minutes button[aria-pressed="true"]{background:#dde0ca;color:#535e42}
@keyframes paper-picker-in{from{opacity:0;translate:0 5px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){.paper-picker:popover-open{animation:none}}

/* The encounter opens with a factual clue before the ticket itself. */
.memory-topline{align-items:flex-start}
.memory-topline .memory-clue{align-items:flex-start}
.memory-clue>span{display:flex;flex-direction:column;gap:5px}
.memory-clue b{font:400 13px/1.45 var(--serif);letter-spacing:.8px;color:#755d45}
.memory-clue small{margin:0;max-width:620px;font:10px/1.55 var(--serif);letter-spacing:.3px;color:#a0927c}
.memory-topline time{padding-top:2px;flex-shrink:0}
@media(max-width:760px){
 .memory-clue{min-width:0}
 .memory-clue>span{min-width:0;gap:3px}
 .memory-clue b{font-size:12px;letter-spacing:.3px}
 .memory-clue small{display:block;max-width:250px;font-size:9px;line-height:1.45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .memory-topline time{padding-top:1px;margin-left:12px}
}
.recognition-access{max-width:360px;margin:18px 0}.recognition-access input{font-family:var(--sans, sans-serif);font-size:14px}
