.auth-screen{min-height:100vh;background:var(--bg);display:flex;align-items:center;justify-content:center;padding:20px}.auth-card{background:var(--surface);border-radius:16px;padding:48px 40px;text-align:center;box-shadow:0 4px 24px #00000014;max-width:400px;width:100%}.auth-title{font-size:24px;font-weight:800;color:var(--primary);margin-bottom:12px}.auth-subtitle{font-size:14px;color:var(--text-secondary);margin-bottom:32px;line-height:1.7}.google-btn{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:12px 24px;font-size:15px;font-weight:600;cursor:pointer;color:#1c1c1c;box-shadow:var(--shadow);width:100%}@media (hover: hover){.google-btn:hover{border-color:var(--primary)}}.item-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:16px;display:flex;flex-direction:column;gap:12px}.item-form__header{display:flex;align-items:center;justify-content:space-between}.item-form__title{font-size:15px;font-weight:700}.item-form__close{background:none;border:none;font-size:12px;color:var(--text-secondary);cursor:pointer;font-family:var(--font)}.item-form__photo{display:flex;align-items:center;justify-content:center;border:1px dashed var(--border);border-radius:var(--radius);min-height:140px;cursor:pointer;overflow:hidden;background:var(--bg)}.item-form__photo-preview{width:100%;max-height:280px;object-fit:contain}.item-form__photo-placeholder{color:var(--text-secondary);font-size:13px}.item-form__row{display:flex;gap:10px}.item-form__field{flex:1;display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-secondary)}.item-form__submit{width:100%}.item-list__filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.item-list__empty{color:var(--text-secondary);text-align:center;padding:32px 0}.item-list__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.item-card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}.item-card__photo{width:100%;aspect-ratio:1;object-fit:cover;background:var(--bg)}.item-card__body{padding:8px;display:flex;flex-direction:column;gap:4px}.item-card__tags{display:flex;flex-wrap:wrap;gap:4px}.item-card__name{font-size:12px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-card__delete{position:absolute;top:6px;right:6px;width:24px;height:24px;border:none;border-radius:50%;background:#0000008c;color:#fff;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center}@media (hover: hover){.item-card__delete:hover{background:var(--danger)}}.outfit-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:16px;display:flex;flex-direction:column;gap:14px}.outfit-form__header{display:flex;align-items:center;justify-content:space-between}.outfit-form__title{font-size:15px;font-weight:700}.outfit-form__close{background:none;border:none;font-size:12px;color:var(--text-secondary);cursor:pointer;font-family:var(--font)}.outfit-form__row{display:flex;gap:10px}.outfit-form__field{flex:1;display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--text-secondary)}.outfit-form__label{font-size:12px;color:var(--text-secondary)}.outfit-form__chips{display:flex;flex-wrap:wrap;gap:6px}.outfit-form__empty{font-size:12px;color:var(--text-secondary);padding:8px 0}.outfit-form__items{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px}.outfit-form__item{position:relative;border:2px solid var(--border);border-radius:var(--radius);padding:0;overflow:hidden;cursor:pointer;background:var(--bg);aspect-ratio:1}.outfit-form__item img{width:100%;height:100%;object-fit:cover;display:block}.outfit-form__item--selected{border-color:var(--primary)}.outfit-form__item-order{position:absolute;top:4px;left:4px;width:20px;height:20px;border-radius:50%;background:var(--primary);color:#1c1c1c;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.outfit-form__submit{width:100%}.outfit-list__filters{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.outfit-list__filter-group{display:flex;flex-wrap:wrap;gap:6px}.outfit-list__empty{color:var(--text-secondary);text-align:center;padding:32px 0}.outfit-list__cards{display:flex;flex-direction:column;gap:12px}.outfit-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px;display:flex;flex-direction:column;gap:8px}.outfit-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.outfit-card__tags{display:flex;flex-wrap:wrap;gap:4px}.outfit-card__delete{background:none;border:none;color:var(--text-secondary);font-size:13px;cursor:pointer;flex-shrink:0}@media (hover: hover){.outfit-card__delete:hover{color:var(--danger)}}.outfit-card__name{font-size:14px;font-weight:600}.outfit-card__items{display:flex;flex-wrap:wrap;gap:6px}.outfit-card__item-photo{width:72px;height:72px;object-fit:cover;border-radius:6px;border:1px solid var(--border);background:var(--bg)}.outfit-card__memo{font-size:12px;color:var(--text-secondary)}:root{--bg: #111111;--surface: #1c1c1c;--border: #2a2a2a;--text: #eeece8;--text-secondary: #9a9896;--primary: #818cf8;--primary-hover: #6674f0;--primary-light: #1e2140;--danger: #e05656;--danger-hover: #c84040;--shadow: 0 1px 4px rgba(0, 0, 0, .5);--radius: 8px;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--text);font-size:14px;line-height:1.6}.loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg)}.loading-spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{background:var(--bg);border-bottom:1px solid var(--border);padding:12px 16px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10}.app-title{font-size:18px;font-weight:700;color:var(--primary)}.signout-btn{background:none;border:1px solid var(--border);border-radius:var(--radius);padding:6px 12px;font-size:12px;color:var(--text-secondary);cursor:pointer}@media (hover: hover){.signout-btn:hover{border-color:var(--danger);color:var(--danger)}}.app-tabs{display:flex;border-bottom:1px solid var(--border);background:var(--bg);position:sticky;top:49px;z-index:10}.app-tab{flex:1;background:none;border:none;border-bottom:2px solid transparent;padding:10px 0;font-size:14px;font-weight:600;color:var(--text-secondary);cursor:pointer;font-family:var(--font)}.app-tab--active{color:var(--primary);border-bottom-color:var(--primary)}.app-main{flex:1;padding:16px;max-width:560px;width:100%;margin:0 auto}.form-input,.form-select{border:1px solid var(--border);border-radius:var(--radius);padding:8px 12px;font-size:14px;font-family:var(--font);background:var(--surface);color:var(--text);outline:none;width:100%}.form-input:focus,.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.btn{border:none;border-radius:var(--radius);padding:10px 16px;font-size:14px;font-weight:600;cursor:pointer;font-family:var(--font)}.btn--primary{background:var(--primary);color:#1c1c1c}@media (hover: hover){.btn--primary:hover{background:var(--primary-hover)}}.btn--primary:disabled{opacity:.6;cursor:default}.form-open-btn{width:100%;margin-bottom:16px}.chip{background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:5px 12px;font-size:12px;color:var(--text-secondary);cursor:pointer;font-family:var(--font)}.chip--active{background:var(--primary-light);border-color:var(--primary);color:var(--primary);font-weight:600}.tag{display:inline-block;background:var(--primary-light);color:var(--primary);border-radius:4px;padding:1px 7px;font-size:11px;font-weight:600}.tag--color{background:var(--surface);color:var(--text-secondary);border:1px solid var(--border)}.tag--season{background:#16321f;color:#6fcf8b}.tag--temp{background:#33202a;color:#f08fb0}
