@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Space+Grotesk:wght@400;500;600;700&family=Syne:wght@700;800&display=swap";.login-page{min-height:100vh;background:#f7f1df;display:grid;place-items:center;padding:30px;position:relative;overflow:hidden}.login-page:before,.login-page:after{content:"";position:absolute;border:3px solid #171715;background:#63c4d2;width:210px;height:210px;transform:rotate(19deg);right:-80px;top:-75px;box-shadow:8px 8px #171715}.login-page:after{width:150px;height:150px;inset:auto auto -65px -72px;background:#ff7eab;transform:rotate(-17deg)}.login-card{width:min(455px,100%);background:#fffdf5;border:4px solid #171715;box-shadow:11px 11px #171715;padding:30px;position:relative;z-index:2}.login-brand{display:flex;align-items:center;gap:10px;font:800 18px/.82 Syne;letter-spacing:-.04em}.login-mark{width:40px;height:40px;display:grid;place-items:center;background:#f3e45c;border:3px solid #171715;box-shadow:3px 3px #171715;font-size:27px;transform:rotate(-4deg)}.login-kicker{font:500 10px DM Mono;letter-spacing:.12em;color:#777062;margin-top:48px}.login-card h1{font:800 clamp(30px,7vw,47px)/.93 Syne;letter-spacing:-.07em;margin:13px 0 15px}.login-card h1 em{color:#eb4b68;font-style:normal}.login-copy{font-size:14px;line-height:1.4;color:#716b5d;max-width:320px;margin-bottom:28px}.login-field{display:block;margin-bottom:17px}.login-field span{display:block;font:500 10px DM Mono;letter-spacing:.1em;margin-bottom:7px}.login-field input{width:100%;border:3px solid #171715;background:#f7f1df;outline:0;padding:13px 12px;font-size:15px}.login-field input:focus{box-shadow:4px 4px #63c4d2}.login-button{width:100%;border:3px solid #171715;background:#ff5a75;box-shadow:5px 5px #171715;padding:14px;font-weight:800;margin-top:7px;transition:.15s}.login-button:not(:disabled):hover{transform:translate(2px,2px);box-shadow:3px 3px #171715}.login-button:disabled{opacity:.45;cursor:not-allowed}.login-error{border:2px solid #c73753;background:#ffe0e6;color:#a72540;padding:9px 10px;font:12px DM Mono;margin:0 0 13px}.login-hint{text-align:center;color:#948a78;font:10px DM Mono;margin:23px 0 0}.login-sticker{position:absolute;z-index:1;left:calc(50% + 285px);top:44%;background:#f3e45c;border:3px solid #171715;box-shadow:5px 5px #171715;padding:12px;font:800 15px/1 Syne;transform:rotate(8deg)}.login-sticker span{color:#eb4b68}@media(max-width:700px){.login-page{padding:20px}.login-card{padding:23px 20px;box-shadow:7px 7px #171715}.login-sticker{display:none}}:root{font-family:Space Grotesk,sans-serif;color:#171715;background:#f7f1df;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;background:#f7f1df;display:flex}.sidebar{width:264px;min-height:100vh;border-right:3px solid #171715;background:#f2e9d3;display:flex;flex-direction:column;flex-shrink:0;position:relative;z-index:20}.sidebar-top{padding:25px 20px 18px}.brand{display:flex;align-items:center;gap:11px;font-family:Syne,sans-serif;font-weight:800;letter-spacing:-.04em;line-height:.82;font-size:18px}.brand-mark{width:38px;height:38px;display:grid;place-items:center;background:#f3e45c;border:3px solid #171715;box-shadow:3px 3px #171715;transform:rotate(-3deg)}.brand-mark svg{width:23px;stroke-width:3}.new-button,.desktop-add{border:3px solid #171715;background:#ff5a75;box-shadow:4px 4px #171715;color:#171715;font-weight:800;letter-spacing:.02em;transition:transform .15s,box-shadow .15s}.new-button:hover,.desktop-add:hover,.save-button:hover{transform:translate(2px,2px);box-shadow:2px 2px #171715}.new-button:active,.desktop-add:active,.save-button:active{transform:translate(4px,4px);box-shadow:none}.new-button{width:100%;margin-top:28px;padding:13px 12px;display:flex;align-items:center;gap:8px;font-size:12px}.new-button span{margin-left:auto;border:2px solid #171715;padding:1px 4px;font-family:DM Mono;font-size:10px}nav{padding:0 12px}.nav-label{font:500 10px DM Mono;letter-spacing:.14em;margin:13px 10px 7px;color:#777062}.nav-button,.collection-button{width:100%;border:0;background:transparent;padding:10px;display:flex;align-items:center;gap:11px;font-weight:700;font-size:14px;text-align:left}.nav-button:hover,.collection-button:hover,.nav-button.active{background:#171715;color:#f7f1df}.nav-count{margin-left:auto;font:11px DM Mono;opacity:.65}.collections-label{margin-top:27px}.collection-button{font-weight:500;padding:8px 10px}.collection-button.active{background:#e7dfc7;color:#171715}.collection-dot{width:10px;height:10px;border:2px solid #171715;border-radius:50%;background:#ff5a75}.dot-1{background:#63c4d2}.dot-2{background:#f3e45c}.dot-3{background:#bda1ea}.sidebar-bottom{margin-top:auto;padding:18px 20px 20px}.export-button{border:0;background:none;display:flex;gap:8px;align-items:center;font:500 10px DM Mono;padding:0;margin-bottom:20px}.storage-card{border-top:2px solid #171715;padding-top:14px;display:flex;justify-content:space-between;font:800 11px Syne;letter-spacing:.02em;line-height:1.15}.storage-card span{color:#eb4b68}.storage-card svg{color:#eb4b68;width:20px}main{flex:1;min-width:0}.topbar{height:90px;border-bottom:3px solid #171715;padding:20px 42px;display:flex;gap:18px;align-items:center}.search-box{height:49px;flex:1;display:flex;align-items:center;gap:12px;border:3px solid #171715;background:#fffdf5;padding:0 13px}.search-box input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:15px}kbd{border:2px solid #aaa390;color:#777062;padding:3px 7px;font:11px DM Mono}.desktop-add{height:49px;padding:0 18px;display:flex;align-items:center;gap:8px;white-space:nowrap}.content{max-width:1440px;padding:38px 42px 60px;margin:0 auto}.headline-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.eyebrow{font:500 11px DM Mono;letter-spacing:.13em;display:flex;align-items:center;gap:8px;color:#777062}.eyebrow span{width:9px;height:9px;background:#ff5a75;border:2px solid #171715;border-radius:50%}h1,h2,h3,p{margin:0}h1{font:800 clamp(30px,4vw,59px)/.94 Syne;letter-spacing:-.055em;margin:12px 0}.headline-row p{color:#777062;font-size:14px}.stat-sticker{background:#f3e45c;border:3px solid #171715;box-shadow:5px 5px #171715;padding:13px 17px;display:flex;align-items:center;gap:12px;transform:rotate(2deg);flex-shrink:0}.stat-sticker strong{font:800 35px Syne;line-height:1}.stat-sticker span{font:800 10px Syne;line-height:1.1}.toolbar{border-bottom:2px solid #bcb3a0;display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:40px;padding-bottom:12px}.chips{display:flex;gap:5px;overflow-x:auto}.chips button{border:0;background:transparent;font:500 10px DM Mono;padding:7px 10px;white-space:nowrap}.chips button:hover,.chips button.selected{background:#171715;color:#f7f1df}.view-switch{display:flex;gap:3px;flex-shrink:0}.view-switch button{border:2px solid #171715;width:34px;height:31px;display:grid;place-items:center;background:transparent}.view-switch button.selected{color:#f7f1df;background:#171715}.view-switch svg{width:15px}.items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px;padding-top:24px}.items.list{grid-template-columns:1fr}.items.list .vault-card{display:flex}.items.list .card-image{width:180px;min-height:170px}.items.list .card-body{flex:1}.vault-card{border:3px solid #171715;background:#fffdf5;box-shadow:5px 5px #171715;min-width:0;transition:transform .15s,box-shadow .15s;overflow:hidden;cursor:pointer}.vault-card:hover{transform:translate(-2px,-2px);box-shadow:8px 8px #171715}.vault-card.blue{border-top:9px solid #63c4d2}.vault-card.pink{border-top:9px solid #ff7eab}.vault-card.yellow{border-top:9px solid #f3e45c}.vault-card.green{border-top:9px solid #8dd7ae}.card-image{height:145px;border-bottom:3px solid #171715;background:#e7dfc7;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover}.card-body{padding:17px 17px 14px;min-height:190px;display:flex;flex-direction:column}.card-top{display:flex;justify-content:space-between;align-items:center}.type-badge{display:inline-flex;align-items:center;gap:5px;font:500 10px DM Mono;text-transform:uppercase}.type-badge svg{width:14px;stroke-width:2.6}.favorite-button{border:0;background:transparent;padding:0;color:#aaa390}.favorite-button.active{color:#ff5a75}.favorite-button svg{width:19px}.card-body h3{font:700 21px/1.05 Syne;letter-spacing:-.04em;margin:18px 0 9px}.card-body p{font-size:13px;color:#716b5d;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.45}.card-body a{display:flex;align-items:center;gap:4px;color:#377b87;font:11px DM Mono;text-decoration:underline;margin-top:10px;overflow:hidden}.card-body a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-body a svg{width:13px;flex-shrink:0}.card-footer{border-top:2px solid #e2dac7;padding-top:10px;margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:6px}.card-tags{display:flex;flex-wrap:wrap;gap:6px;font:10px DM Mono;color:#777062}.collection-pill{background:#f2e9d3;padding:4px 6px;font:10px DM Mono;white-space:nowrap}.loading-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:21px;padding-top:24px}.skeleton{height:260px;background:#e9e0ca;border:3px solid #d4cbb7;animation:pulse 1.2s ease-in-out infinite alternate}@keyframes pulse{to{opacity:.45}}.empty-state{min-height:390px;border:3px dashed #bcb3a0;margin-top:24px;display:grid;place-items:center;align-content:center;text-align:center;padding:30px}.empty-icon{width:82px;height:82px;display:grid;place-items:center;border:3px solid #171715;background:#f3e45c;transform:rotate(-5deg);margin-bottom:25px}.empty-state h2{font:800 25px Syne}.empty-state p{color:#777062;margin:10px 0 22px;font-size:14px}.empty-action{width:auto;display:inline-flex}.mobile-header,.sidebar-close,.scrim{display:none}.modal-layer{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:25px}.modal-backdrop{position:absolute;inset:0;background:#171715b3;border:0}.modal{width:min(720px,100%);max-height:min(850px,94vh);background:#f7f1df;border:4px solid #171715;box-shadow:10px 10px #171715;position:relative;display:flex;flex-direction:column}.modal-header{padding:23px 25px 18px;border-bottom:3px solid #171715;display:flex;justify-content:space-between;gap:20px;background:#f3e45c}.modal-kicker{font:500 10px DM Mono;letter-spacing:.12em}.modal-header h2{font:800 27px/1 Syne;letter-spacing:-.05em;margin-top:8px}.modal-close{border:3px solid #171715;background:#fffdf5;width:38px;height:38px;display:grid;place-items:center;flex-shrink:0}.modal-close:hover{background:#ff5a75}.modal-scroll{padding:22px 25px;overflow-y:auto}.type-picker{border:0;padding:0;margin:0 0 21px}.type-picker legend,.field>span{font:500 10px DM Mono;letter-spacing:.1em;display:block;margin-bottom:7px}.type-picker{display:flex;gap:7px;flex-wrap:wrap}.type-picker legend{width:100%}.type-picker button{border:2px solid #171715;background:#fffdf5;padding:8px 10px;display:flex;align-items:center;gap:6px;font-weight:700;font-size:12px;position:relative}.type-picker button.selected{box-shadow:3px 3px #171715;transform:translate(-1px,-1px)}.type-picker button.blue.selected{background:#63c4d2}.type-picker button.pink.selected{background:#ff7eab}.type-picker button.yellow.selected{background:#f3e45c}.type-picker button.green.selected{background:#8dd7ae}.type-picker svg{width:16px}.type-picker .type-check{position:absolute;top:-8px;right:-8px;width:16px;height:16px;background:#171715;color:#f7f1df;border-radius:50%;padding:2px}.field{display:block;margin-bottom:17px}.field>span b{color:#eb4b68}.field input,.field textarea,.tag-input{width:100%;border:2px solid #171715;background:#fffdf5;outline:0;padding:10px 11px;font-size:14px}.field input:focus,.field textarea:focus,.tag-input:focus-within{box-shadow:3px 3px #63c4d2}.field textarea{resize:vertical;min-height:100px;line-height:1.4}.field-row{display:grid;grid-template-columns:1fr 1.4fr;gap:14px}.tag-input{display:flex;gap:7px;align-items:center;padding:0 10px}.tag-input svg{width:16px;flex-shrink:0}.tag-input input{border:0;padding-left:0;box-shadow:none!important}.dropzone{min-height:150px;border:3px dashed #171715;background:#fffdf5;display:grid;place-items:center;align-content:center;gap:7px;text-align:center;padding:15px;margin-bottom:17px;cursor:pointer;position:relative}.dropzone input{position:absolute;opacity:0;inset:0;cursor:pointer}.dropzone b{font:800 13px Syne}.dropzone>span{font:11px DM Mono;color:#777062}.dropzone.has-image{display:block;padding:0;height:200px;overflow:hidden}.dropzone.has-image img{width:100%;height:100%;object-fit:cover}.replace-image{position:absolute;inset:auto 12px 12px;background:#f3e45c!important;border:2px solid #171715;padding:8px;color:#171715!important;font-weight:700}.image-note{font:11px DM Mono;margin:-8px 0 17px;color:#377b87;display:flex;align-items:center;gap:5px}.favorite-toggle{display:inline-flex;gap:7px;align-items:center;font:500 10px DM Mono;cursor:pointer}.favorite-toggle input{accent-color:#ff5a75;width:17px;height:17px}.modal-actions{border-top:3px solid #171715;padding:15px 25px;display:flex;justify-content:space-between;gap:10px;background:#f2e9d3}.danger-actions,.primary-actions{display:flex;gap:7px}.modal-actions button{border:2px solid #171715;background:transparent;font:500 10px DM Mono;padding:9px 10px;display:flex;align-items:center;gap:6px}.modal-actions button svg{width:15px}.modal-actions .danger{color:#c73753}.modal-actions .cancel-button:hover{background:#fffdf5}.save-button{background:#171715!important;color:#f7f1df;font-weight:700!important;box-shadow:3px 3px #ff5a75}.save-button:disabled{opacity:.55;cursor:wait}.toast{position:fixed;z-index:100;bottom:24px;right:24px;background:#171715;color:#f7f1df;border:3px solid #171715;box-shadow:5px 5px #ff5a75;padding:13px 17px;font-weight:700;display:flex;align-items:center;gap:8px}@media(max-width:1100px){.items,.loading-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content,.topbar{padding-left:28px;padding-right:28px}}@media(max-width:700px){.app-shell{display:block}.mobile-header{height:70px;display:flex;align-items:center;justify-content:space-between;padding:13px 17px;border-bottom:3px solid #171715;background:#f2e9d3;position:sticky;top:0;z-index:25}.brand.compact{font-size:14px}.brand.compact .brand-mark{width:32px;height:32px}.brand.compact .brand-mark svg{width:19px}.icon-button{border:2px solid #171715;background:#fffdf5;width:39px;height:39px;display:grid;place-items:center}.icon-button.hot{background:#ff5a75}.sidebar{position:fixed;left:-285px;top:0;bottom:0;transition:left .2s;box-shadow:7px 0 #171715}.sidebar.open{left:0}.sidebar-close{display:block;position:absolute;right:13px;top:24px;border:0;background:transparent}.scrim{display:block;position:fixed;inset:0;z-index:19;background:#1717158c;border:0}.topbar{height:auto;padding:16px;border-bottom:0}.desktop-add{display:none}.content{padding:13px 16px 45px}.headline-row{align-items:flex-start}h1{font-size:36px;max-width:300px}.stat-sticker{padding:9px 10px;gap:7px}.stat-sticker strong{font-size:25px}.stat-sticker span{font-size:8px}.toolbar{margin-top:26px}.items,.loading-grid{grid-template-columns:1fr;gap:17px}.modal-layer{padding:0;align-items:end}.modal{max-height:95vh;border-width:3px;box-shadow:none}.modal-header{padding:19px 17px 16px}.modal-header h2{font-size:22px}.modal-scroll{padding:19px 17px}.modal-actions{padding:13px 17px;flex-wrap:wrap}.danger-actions{order:2;width:100%}.primary-actions{width:100%;justify-content:flex-end}.field-row{grid-template-columns:1fr;gap:0}.type-picker button{flex:1;justify-content:center}.type-picker button span{display:none}.type-picker button svg{width:19px;height:19px}.type-picker .type-check{display:block}.toast{left:15px;right:15px;bottom:15px;justify-content:center}}html{background:#f7f1df}body{min-height:100vh}
