@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Fraunces:opsz,wght@9..144,600;9..144,800&display=swap";:root{color:#211f1a;background:#f4eddf;font-family:DM Mono,ui-monospace,monospace;font-synthesis:none;--ink: #211f1a;--paper: #f4eddf;--cream: #fffaf0;--orange: #f15a29;--blue: #2347d8;--line: rgba(33, 31, 26, .23)}*{box-sizing:border-box}html{min-width:320px;background:var(--paper)}body{margin:0;min-width:320px;min-height:100vh}body:before{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;content:"";pointer-events:none;opacity:.27;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.13'/%3E%3C/svg%3E")}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button,a{color:inherit}:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.site-shell{min-height:100vh}.topbar{height:88px;padding:0 clamp(20px,5vw,76px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none}.brand-mark{width:43px;height:43px;display:grid;place-items:center;color:var(--cream);background:var(--ink);border-radius:50% 48% 44% 52%;font-weight:500;transform:rotate(-5deg)}.brand strong,.brand small{display:block}.brand strong{font:800 20px/1 Fraunces,Georgia,serif}.brand small{margin-top:3px;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.auth-actions{display:flex;align-items:center;gap:9px}.user-avatar{width:38px;height:38px;border:2px solid var(--ink)}.button{min-height:42px;padding:0 17px;border:0;border-radius:2px;cursor:pointer;font-size:12px;font-weight:500;letter-spacing:.03em}.button:disabled{cursor:wait;opacity:.55}.button-solid{color:#fff;background:var(--ink);box-shadow:3px 3px 0 var(--orange)}.button-solid:hover{background:var(--blue)}.button-quiet{background:transparent}.button-quiet:hover{text-decoration:underline}.button-outline{border:1px solid var(--ink);background:var(--cream);box-shadow:3px 3px 0 var(--ink)}.button-danger{color:#a02617;border:1px solid #bd402c;background:transparent}.button-danger:hover{color:#fff;background:#a02617}.wide{width:100%;min-height:50px}.eyebrow{margin:0 0 13px;color:var(--orange);font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase}.welcome{width:min(1180px,calc(100% - 40px));min-height:calc(100vh - 88px);margin:auto;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:8vw}.welcome h1,.gallery-heading h1,.connect-card h1{margin:0;font:800 clamp(48px,7vw,96px)/.91 "Fraunces",Georgia,serif;letter-spacing:-.055em}.welcome h1 em{color:var(--blue);font-weight:inherit}.welcome-copy>p:last-child{max-width:510px;margin:28px 0 0;color:#5d584e;font-size:14px;line-height:1.75}.welcome-collage{position:relative;min-height:510px}.scrap{position:absolute;display:grid;place-items:center;text-align:center;box-shadow:8px 10px 20px #211f1a33}.scrap-one{top:7%;right:8%;bottom:35%;left:18%;color:#fff;background:var(--orange);font:800 54px/.85 Fraunces,serif;transform:rotate(5deg)}.scrap-two{width:42%;height:42%;left:0;bottom:10%;color:var(--cream);background:var(--blue);font-size:22px;transform:rotate(-8deg)}.scrap-three{width:47%;height:36%;right:1%;bottom:3%;background:#d8e1b5;border:2px dashed var(--ink);font-size:18px;transform:rotate(8deg)}.gallery-heading{width:min(1440px,calc(100% - clamp(40px,10vw,152px)));margin:clamp(55px,8vw,105px) auto 48px;display:flex;align-items:end;justify-content:space-between;gap:40px}.gallery-heading h1{font-size:clamp(48px,6.5vw,90px)}.heading-note{width:285px;margin:0 0 7px;color:#686155;font-size:11px;line-height:1.7}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.upload-section{width:min(1440px,calc(100% - clamp(40px,10vw,152px)));margin:0 auto 32px}.upload-toolbar{display:flex;align-items:center;gap:24px}.upload-dropzone{min-height:106px;padding:24px;border:2px dashed var(--line);background:var(--cream);transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.upload-dropzone:focus-within{border-color:var(--blue)}.upload-dropzone.is-dragging{border-color:var(--blue);background:#edf0ff;box-shadow:4px 4px 0 var(--blue)}.upload-dropzone.is-busy{border-style:solid}.upload-button{min-height:48px;padding-inline:23px}.upload-button>span{margin-right:6px;font-size:19px}.upload-toolbar p{margin:0;color:#686155;font-size:10px;line-height:1.65}.upload-toolbar p strong{display:block;margin-bottom:4px;color:var(--ink);font-size:12px;font-weight:500}.upload-toolbar p span{display:block}.upload-queue{margin-top:23px;padding:0 22px;border:1px solid var(--line);background:var(--cream);box-shadow:4px 4px #ded5c5}.upload-queue-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0}.upload-queue h2{margin:0;font:800 22px Fraunces,Georgia,serif}.upload-queue ul{margin:0;padding:0;list-style:none}.upload-row{display:flex;align-items:center;gap:22px;padding:17px 0;border-top:1px solid var(--line)}.upload-file{flex:1 1 40%;min-width:0}.upload-file strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500}.upload-file>span{display:block;margin-top:5px;color:#686155;font-size:9px}.upload-result{flex:1 1 40%;min-width:0;font-size:10px}.upload-result>span{color:var(--blue)}.upload-saved .upload-result>span{color:#347346}.upload-failed .upload-result>span,.upload-result p{color:#9f2d1d}.upload-result progress{width:100%;height:6px;display:block;margin-top:9px;accent-color:var(--orange)}.upload-result p{margin:7px 0 0;line-height:1.6;overflow-wrap:anywhere}.upload-row>.button{flex:0 0 auto;min-height:34px;font-size:10px}.upload-footnote{margin:0;padding:14px 0;border-top:1px solid var(--line);color:#686155;font-size:9px;line-height:1.7}.filters{width:min(1440px,calc(100% - clamp(40px,10vw,152px)));margin:0 auto 22px;display:flex;gap:4px;border-bottom:1px solid var(--line)}.filters button{padding:12px 17px;border:0;border-bottom:3px solid transparent;background:transparent;cursor:pointer;font-size:11px}.filters button:hover{color:var(--blue)}.filters button.active{border-color:var(--orange);font-weight:500}.media-grid{width:min(1440px,calc(100% - clamp(40px,10vw,152px)));margin:auto;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(8px,1.25vw,18px)}.media-card{position:relative;aspect-ratio:1;overflow:hidden;background:#ded5c5}.media-card:nth-child(9n+2),.media-card:nth-child(9n+7){grid-row:span 2;aspect-ratio:auto}.media-card button{width:100%;height:100%;padding:0;display:block;border:0;background:none;cursor:pointer}.media-card img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .3s ease,filter .3s ease}.media-card button:hover img{transform:scale(1.035);filter:saturate(1.08)}.card-scrim{position:absolute;top:55%;right:0;bottom:0;left:0;background:linear-gradient(transparent,#14120f99);opacity:0;transition:opacity .2s}.media-card:hover .card-scrim,.media-card:focus-within .card-scrim{opacity:1}.card-meta{position:absolute;inset:auto 10px 9px;display:flex;justify-content:space-between;align-items:end;pointer-events:none}.kind-label,.status-label{padding:5px 7px;color:#fff;background:#14120fdb;font-size:8px;letter-spacing:.08em;text-transform:uppercase}.kind-label{opacity:0;transition:opacity .2s}.media-card:hover .kind-label,.media-card:focus-within .kind-label{opacity:1}.status-label{opacity:1}.status-label.processing{color:var(--ink);background:#f0ca49}.status-label.failed{background:#ad321f}.media-placeholder{width:100%;height:100%;display:grid;place-items:center;background:repeating-linear-gradient(135deg,#e4dac8,#e4dac8 12px,#d9cebb 12px,#d9cebb 24px)}.media-placeholder span{padding:8px;border:1px solid var(--ink);background:var(--paper);font-size:9px;text-transform:uppercase;transform:rotate(-4deg)}.skeleton{aspect-ratio:1;background:linear-gradient(100deg,#ded5c5 30%,#eee5d5,#ded5c5 70%);background-size:300% 100%;animation:shimmer 1.5s infinite}.skeleton:nth-child(9n+2),.skeleton:nth-child(9n+7){grid-row:span 2}@keyframes shimmer{to{background-position:-150% 0}}.notice{width:min(1440px,calc(100% - clamp(40px,10vw,152px)));margin:0 auto 18px;padding:12px 15px;display:flex;justify-content:space-between;align-items:center;font-size:11px}.notice.error{color:#792317;border:1px solid #c76b5c;background:#f8dbd1}.notice button{border:0;background:transparent;cursor:pointer;font-weight:500;text-decoration:underline}.empty-state{min-height:360px;display:grid;place-items:center;align-content:center;text-align:center}.empty-stamp{color:var(--orange);font:800 96px/.8 Fraunces,serif;opacity:.3}.empty-state h2{margin:18px 0 6px;font:800 26px Fraunces,serif}.empty-state p{color:#686155;font-size:11px}.load-more-wrap{padding:45px 20px 80px;display:flex;justify-content:center}.dialog-open{overflow:hidden}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;padding:24px;display:grid;place-items:center;background:#181511c4;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.detail-dialog{width:min(1040px,100%);max-height:calc(100vh - 48px);overflow:auto;background:var(--cream);box-shadow:12px 12px 0 var(--orange)}.detail-header{min-height:84px;padding:18px 20px 15px 26px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.detail-header .eyebrow{margin-bottom:5px}.detail-header h2{max-width:70vw;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:800 24px Fraunces,serif}.icon-button{width:42px;height:42px;flex:0 0 auto;border:1px solid var(--ink);border-radius:50%;background:transparent;cursor:pointer;font:30px/1 sans-serif}.icon-button:hover{color:#fff;background:var(--ink)}.detail-stage{min-height:min(62vh,650px);display:grid;place-items:center;background:#171714}.original-media{max-width:100%;max-height:min(62vh,650px);display:block;object-fit:contain}.detail-loading{color:#e9dfcd;font-size:11px;animation:pulse 1.2s ease-in-out infinite alternate}@keyframes pulse{to{opacity:.35}}.state-panel{max-width:400px;margin:30px;padding:25px;display:flex;flex-direction:column;gap:9px;color:var(--ink);background:#f0ca49;box-shadow:5px 5px 0 var(--cream);transform:rotate(-1deg)}.state-panel strong{font:800 24px Fraunces,serif}.state-panel span{font-size:11px;line-height:1.55}.state-panel.failed{color:#fff;background:#9f2d1d}.detail-footer{min-height:78px;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.detail-footer>span{color:#6c655a;font-size:9px}.detail-footer>div{display:flex;gap:9px}.inline-error{margin:0;padding:10px 24px;color:#8e2719;background:#f8dbd1;font-size:10px}.detail-sharing{padding:22px 24px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;border-bottom:1px solid var(--line)}.media-action-buttons{display:flex;flex-wrap:wrap;gap:12px}.media-action-buttons .button,.share-link-actions>.button{min-height:44px}.sharing-note{margin:14px 0 0;color:#686155;font-size:10px;line-height:1.7;overflow-wrap:anywhere}.sharing-error{margin:14px 0 0;color:#8e2719;font-size:10px;line-height:1.7}.share-link-panel{margin-top:16px;padding:14px;border:1px solid var(--line);background:var(--paper)}.share-link-panel label{display:block;margin-bottom:9px;color:#686155;font-size:10px}.share-link-panel input{display:block;width:100%;min-width:0;min-height:44px;padding:10px;border:1px solid var(--line);border-radius:0;color:var(--ink);background:var(--cream);font-size:10px}.share-link-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;margin-top:8px}.share-link-meta>span{color:#686155;font-size:9px}.share-link-meta .button{min-height:40px;padding-inline:0;font-size:9px}.shared-page{width:min(1040px,calc(100% - 48px));margin:50px auto 80px}.shared-card{background:var(--cream);box-shadow:10px 10px 0 var(--orange)}.shared-card .detail-header h1{max-width:85vw;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:800 30px Fraunces,serif}.shared-card .detail-sharing{grid-template-columns:minmax(0,1fr);gap:0}.shared-footer{padding:18px 24px;color:#686155;font-size:10px}.shared-retry{padding:22px 24px}.connect-page{min-height:calc(100vh - 88px);padding:50px 20px;display:grid;place-items:center}.connect-card{width:min(490px,100%);padding:clamp(26px,5vw,50px);border:1px solid var(--ink);background:var(--cream);box-shadow:9px 9px 0 var(--blue)}.connect-art{width:92px;height:62px;margin:-78px 0 32px auto;position:relative;display:grid;place-items:center;color:#fff;background:var(--orange);border:2px solid var(--ink);transform:rotate(4deg)}.connect-art span{font-weight:500;letter-spacing:.12em}.connect-art i{width:34px;height:8px;position:absolute;right:-29px;background:var(--ink)}.connect-card h1{font-size:clamp(40px,7vw,61px)}.connect-copy{margin:22px 0;color:#625c52;font-size:11px;line-height:1.7}.connection-message{margin:22px 0;padding:14px;display:flex;flex-direction:column;gap:5px;border-left:4px solid var(--blue);background:#e5e8f3}.connection-message strong{font-size:11px}.connection-message span{font-size:9px;line-height:1.5}.connection-message.success{border-color:#347346;background:#dcebdc}.connection-message.error{border-color:#a83222;background:#f7dcd4}.back-link{margin-top:24px;display:inline-block;color:#686155;font-size:9px}.config-error{max-width:650px;margin:15vh auto;padding:30px}.config-error h1{font:800 50px/1 Fraunces,serif}@media(max-width:1050px){.media-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:760px){.topbar{height:72px;padding:0 18px}.brand small{display:none}.brand strong{font-size:18px}.brand-mark{width:36px;height:36px;font-size:12px}.auth-actions .button{min-height:37px;padding:0 10px;font-size:10px}.welcome{min-height:calc(100vh - 72px);grid-template-columns:1fr;align-content:center;overflow:hidden}.welcome h1{font-size:clamp(50px,15vw,76px)}.welcome-collage{min-height:230px;margin-top:25px}.scrap-one{top:0;right:5%;bottom:15%;left:20%;font-size:38px}.scrap-two{bottom:0}.scrap-three{bottom:-10%}.gallery-heading{margin-top:50px;display:block}.gallery-heading h1{font-size:clamp(48px,14vw,68px)}.heading-note{width:auto;margin-top:25px}.upload-row{align-items:flex-start;flex-wrap:wrap;gap:12px}.upload-file{flex-basis:100%}.upload-result{flex-basis:calc(100% - 100px)}.media-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-dialog{max-height:calc(100vh - 20px)}.dialog-backdrop{padding:10px}.detail-stage{min-height:50vh}.detail-footer{align-items:flex-start;flex-direction:column}.detail-footer>div{width:100%}.detail-footer .button{flex:1}.detail-sharing{grid-template-columns:minmax(0,1fr);padding:20px;gap:24px}.shared-page{width:calc(100% - 28px);margin-top:28px}.shared-card{box-shadow:6px 6px 0 var(--orange)}.shared-card .detail-header{padding:20px}.shared-card .detail-header h1{font-size:24px}.connect-page{min-height:calc(100vh - 72px);padding-top:80px}}@media(max-width:470px){.media-grid{width:calc(100% - 20px);grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.gallery-heading,.filters,.notice,.upload-section{width:calc(100% - 32px)}.upload-toolbar{align-items:flex-start;flex-direction:column;gap:13px}.upload-dropzone{padding:20px}.upload-queue{padding-inline:14px}.media-card:nth-child(9n+2),.media-card:nth-child(9n+7){grid-row:span 1;aspect-ratio:1}.filters button{flex:1;padding-inline:5px}.detail-header h2{max-width:58vw;font-size:19px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
