:root{color:#1a1a1a;font-family:system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{background:#f6f6f7;margin:0}.app{max-width:900px;margin:0 auto;padding:1rem}nav{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}nav button{cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:6px;padding:.5rem .9rem;font-size:.95rem}nav button.active{color:#fff;background:#1a1a1a;border-color:#1a1a1a}h1{font-size:1.4rem}h2{margin:1rem 0 .4rem;font-size:1rem}.picker{flex-wrap:wrap;gap:.6rem;margin-bottom:.5rem;display:flex}.option{text-align:left;cursor:pointer;font:inherit;color:inherit;background:#fff;border:1px solid #e2e2e2;border-radius:8px;flex-direction:column;align-items:flex-start;gap:.3rem;padding:.5rem;display:flex}.option.selected{border-color:#1a1a1a;box-shadow:0 0 0 2px #1a1a1a}.option img{border-radius:6px;width:120px;height:auto;display:block}.option.scene{max-width:260px}.option.scene .muted{white-space:normal}button{cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:6px;padding:.5rem .9rem;font-family:inherit;font-size:.95rem}button:disabled{opacity:.5;cursor:default}.row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}input[type=text],input[type=password],textarea,select{border:1px solid #ccc;border-radius:6px;padding:.5rem;font-family:inherit;font-size:.95rem}input[type=text],input[type=password],select{min-width:200px}.grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;display:grid}.card{background:#fff;border:1px solid #e2e2e2;border-radius:8px;flex-direction:column;gap:.4rem;padding:.6rem;display:flex}.card img{aspect-ratio:1;object-fit:cover;background:#eee;border-radius:6px;width:100%}.card img.take{aspect-ratio:auto;object-fit:contain;height:auto}.card select{width:100%;min-width:0}.card .text-item{text-align:center;color:#444;flex:1;justify-content:center;align-items:center;min-height:80px;font-style:italic;display:flex}.muted{color:#888;font-size:.85rem}.caption{text-align:center;font-size:.85rem}.primary{color:#fff;background:#1a1a1a;border:none;border-radius:6px;padding:.55rem 1rem}.danger{color:#b00;border-color:#e5b3b3}.checklist{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.4rem;margin:.5rem 0 1rem;display:grid}.checklist label{background:#fff;border:1px solid #e2e2e2;border-radius:6px;align-items:center;gap:.4rem;padding:.4rem;font-size:.9rem;display:flex}.thumb{object-fit:cover;background:#eee;border-radius:4px;width:48px;height:48px}.error{color:#b00;font-size:.9rem}.prompt-preview{white-space:pre-wrap;word-break:break-word;color:#333;background:#fff;border:1px solid #e2e2e2;border-radius:8px;margin:.3rem 0 1rem;padding:.7rem .9rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.lightbox{cursor:zoom-out;z-index:100;background:#000000d9;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.lightbox img{object-fit:contain;cursor:default;border-radius:4px;max-width:100%;max-height:100%}.lightbox-nav,.lightbox-close{color:#fff;cursor:pointer;z-index:101;background:#0006;border:none;border-radius:6px;line-height:1;position:fixed}.lightbox-nav{padding:.5rem 1rem;font-size:2.5rem;top:50%;transform:translateY(-50%)}.lightbox-nav.prev{left:1rem}.lightbox-nav.next{right:1rem}.lightbox-close{padding:.1rem .7rem;font-size:1.6rem;top:1rem;right:1rem}.lightbox-nav:hover,.lightbox-close:hover{background:#000000b3}.lightbox-count{color:#fff;z-index:101;background:#0006;border-radius:6px;padding:.2rem .7rem;font-size:.9rem;position:fixed;bottom:1rem;left:50%;transform:translate(-50%)}.lightbox-caption{text-align:center;color:#fff;z-index:101;background:#0006;border-radius:6px;max-width:80%;padding:.2rem .7rem;font-size:.95rem;position:fixed;bottom:3rem;left:50%;transform:translate(-50%)}.detail-modal{z-index:100;background:#00000080;justify-content:center;align-items:flex-start;padding:2rem 1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.detail-content{background:#f6f6f7;border-radius:10px;width:100%;max-width:640px;padding:1.2rem}.detail-content h3{margin:1rem 0 .4rem;font-size:.95rem}
