*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#091014;color:#fff;overflow:hidden}button{font:inherit;color:inherit}.desktop{height:100dvh;width:100vw;background:url("../wallpapers/sunset-islands.jpg") center/cover no-repeat;position:relative;transition:background-image .35s ease}.shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.04) 45%,rgba(0,0,0,.36));pointer-events:none}.brand{position:absolute;top:26px;left:30px;letter-spacing:.08em;font-size:20px;text-shadow:0 2px 12px #000}.brand span{font-weight:300;margin-left:5px}.mobile-status{display:none}.icons{position:absolute;top:88px;left:28px;display:grid;grid-template-columns:84px 84px;gap:20px 12px}.app{border:0;background:none;text-align:center;cursor:pointer;text-shadow:0 2px 12px #000}.app span{width:58px;height:58px;margin:auto;display:grid;place-items:center;border:1px solid rgba(255,255,255,.32);border-radius:17px;background:rgba(15,22,27,.48);backdrop-filter:blur(15px);font-size:27px;box-shadow:0 10px 30px rgba(0,0,0,.2)}.app label{display:block;font-size:12px;margin-top:7px}.dock{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);display:flex;gap:10px;padding:9px;border:1px solid rgba(255,255,255,.2);border-radius:22px;background:rgba(8,13,17,.55);backdrop-filter:blur(18px)}.dock button{border:0;background:rgba(255,255,255,.1);border-radius:14px;width:48px;height:48px;font-size:22px;cursor:pointer}.window{position:absolute;width:min(950px,72vw);height:min(670px,75vh);top:50%;left:50%;transform:translate(-44%,-50%) scale(.97);background:rgba(10,15,19,.82);border:1px solid rgba(255,255,255,.18);border-radius:22px;backdrop-filter:blur(26px);box-shadow:0 30px 100px rgba(0,0,0,.5);opacity:0;pointer-events:none;transition:.2s ease;overflow:hidden}.window.open{opacity:1;pointer-events:auto;transform:translate(-44%,-50%) scale(1)}.windowbar{height:72px;padding:16px 18px 13px 22px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.12)}.windowbar strong,.windowbar small{display:block}.windowbar small{opacity:.55;margin-top:2px}.windowbar button{border:0;background:rgba(255,255,255,.1);width:36px;height:36px;border-radius:50%;font-size:23px;cursor:pointer}.windowbody{height:calc(100% - 72px);display:grid;grid-template-columns:1fr 300px;gap:18px;padding:18px;overflow:auto}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-content:start}.wall{border:0;padding:0;border-radius:15px;overflow:hidden;position:relative;aspect-ratio:16/9;background:#222;cursor:pointer}.wall img{width:100%;height:100%;object-fit:cover;display:block;transition:.2s}.wall:hover img{transform:scale(1.025)}.wall b{position:absolute;left:12px;bottom:10px;text-shadow:0 2px 8px #000;font-size:13px}.ad{height:250px;border:1px dashed rgba(255,255,255,.25);border-radius:16px;display:grid;place-items:center;align-content:center;gap:6px;background:rgba(255,255,255,.04);color:rgba(255,255,255,.55)}.ad strong{font-size:24px;color:rgba(255,255,255,.75)}.tip{margin-top:15px;padding:17px;border-radius:15px;background:rgba(255,255,255,.07);line-height:1.45;color:rgba(255,255,255,.72)}.previewbar{position:absolute;right:24px;bottom:25px;display:none;align-items:center;gap:18px;padding:10px 11px 10px 16px;border-radius:17px;background:rgba(8,13,17,.68);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.18)}.previewbar.show{display:flex}.previewbar small,.previewbar strong{display:block}.previewbar small{font-size:9px;opacity:.55;letter-spacing:.12em}.previewbar button{border:0;border-radius:11px;background:#fff;color:#111;padding:10px 14px;font-weight:700;cursor:pointer}
@media(max-width:700px){.brand{top:58px;left:20px;font-size:15px}.mobile-status{display:flex;position:absolute;top:0;left:0;right:0;padding:max(13px,env(safe-area-inset-top)) 20px 8px;justify-content:space-between;font-weight:700;text-shadow:0 2px 8px #000}.icons{top:125px;left:16px;right:16px;grid-template-columns:repeat(3,1fr);gap:24px 8px}.app span{width:62px;height:62px;border-radius:19px}.app label{font-size:12px}.dock{bottom:max(15px,env(safe-area-inset-bottom));width:calc(100% - 32px);justify-content:space-around}.dock button{width:54px}.window{top:auto;bottom:0;left:0;width:100%;height:74dvh;transform:translateY(105%);border-radius:24px 24px 0 0;border-bottom:0}.window.open{transform:translateY(0)}.windowbar{height:66px}.windowbody{display:block;padding:14px 14px 100px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.wall{aspect-ratio:9/13}.wall img{object-fit:cover}aside{margin-top:14px}.ad{height:180px}.tip{display:none}.previewbar{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));justify-content:space-between;z-index:5}.previewbar.show~*{}body.preview .icons,body.preview .brand,body.preview .dock{opacity:0;pointer-events:none}.shade{background:linear-gradient(180deg,rgba(0,0,0,.25),transparent 38%,rgba(0,0,0,.22))}}

.download-modal,.crop-modal{position:fixed;inset:0;z-index:20;display:grid;place-items:center;background:rgba(0,0,0,.55);backdrop-filter:blur(12px);opacity:0;pointer-events:none;transition:.2s}.download-modal.open,.crop-modal.open{opacity:1;pointer-events:auto}.modal-card,.crop-card{width:min(520px,calc(100vw - 28px));border:1px solid rgba(255,255,255,.18);border-radius:22px;background:rgba(12,18,22,.94);box-shadow:0 30px 100px rgba(0,0,0,.55);padding:18px}.crop-card{width:min(900px,calc(100vw - 28px));max-height:94dvh;overflow:auto}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.modal-head small{font-size:9px;letter-spacing:.14em;opacity:.5}.modal-head h2{font-size:20px;margin:2px 0 0}.x{border:0;background:rgba(255,255,255,.09);width:38px;height:38px;border-radius:50%;font-size:24px}.screen-choice{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);border-radius:16px;padding:16px;margin-top:10px;cursor:pointer}.screen-choice.primary{background:rgba(255,255,255,.12)}.screen-choice span b,.screen-choice span small{display:block}.screen-choice span small{opacity:.55;margin-top:4px}.screen-choice>strong{font-size:28px;font-weight:300}.other-list{display:none;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.other-list.open{display:grid}.other-list button{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045);border-radius:13px;padding:13px;text-align:left}.other-list b,.other-list small{display:block}.other-list small{opacity:.5;margin-top:3px}.crop-help{opacity:.62;font-size:13px;margin:0 0 12px}.crop-stage{height:min(58vh,560px);min-height:300px;border-radius:16px;overflow:hidden;background:#050708;touch-action:none;display:grid;place-items:center}.crop-stage canvas{display:block;max-width:100%;max-height:100%;box-shadow:0 0 0 9999px rgba(0,0,0,.42)}.crop-controls{padding-top:15px}.crop-controls label{display:flex;align-items:center;gap:12px;font-size:12px;opacity:.8}.crop-controls input{flex:1}.crop-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}.crop-actions button{border:0;border-radius:12px;padding:11px 15px;background:rgba(255,255,255,.09)}.crop-actions .save{background:#fff;color:#111;font-weight:800}
@media(max-width:700px){.download-modal,.crop-modal{align-items:end}.modal-card,.crop-card{width:100%;border-radius:24px 24px 0 0;padding-bottom:max(18px,env(safe-area-inset-bottom))}.crop-card{max-height:96dvh}.crop-stage{height:56dvh;min-height:260px}.other-list{grid-template-columns:1fr 1fr}}

/* v0.3 branding/navigation */
.brand{width:min(330px,48vw);height:auto;top:24px;left:28px;letter-spacing:0;font-size:0}
.brand img{display:block;width:100%;height:auto;filter:drop-shadow(0 3px 7px rgba(0,0,0,.72)) drop-shadow(0 8px 22px rgba(0,0,0,.35))}
.app{ text-shadow:0 2px 3px rgba(0,0,0,.95),0 4px 10px rgba(0,0,0,.9),0 0 18px rgba(0,0,0,.65)}
.app label{font-weight:600}
.dock button img{width:32px;height:32px;object-fit:contain;display:block;margin:auto}
@media(max-width:700px){
 .brand{top:70px;left:22px;width:min(280px,58vw)}
 .icons{top:150px}
 .app label{text-shadow:0 2px 2px #000,0 3px 7px #000,0 0 15px rgba(0,0,0,.95)}
 .dock{gap:6px;padding:8px}
 .dock button{width:50px;height:50px}
 .dock button img{width:34px;height:34px}
}

/* v0.3.1 preview navigation */
.preview-actions{display:flex;align-items:center;gap:7px}
.preview-actions .preview-home,.preview-actions .preview-close{background:rgba(255,255,255,.1);color:#fff;font-weight:700}
.preview-actions .preview-home{width:42px;padding:10px 0;font-size:20px}
.preview-actions .preview-close{padding:10px 12px}
@media(max-width:700px){
 .previewbar{gap:8px;padding-left:14px}
 .preview-meta{min-width:0;flex:1}
 .preview-meta strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .preview-actions{gap:5px}
 .preview-actions .preview-home{width:39px;padding:10px 0}
 .preview-actions .preview-close{font-size:0;width:39px;padding:10px 0}
 .preview-actions .preview-close::after{content:"×";font-size:20px}
 .preview-actions #download{padding:10px 12px}
}
