:root{--primary: #da362a;--bg: #f6f1ef;--card-bg: #f4dbcb;--detail-bg: #f6f1ef;--text: #1f2937;--danger: #f12929}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:var(--bg);color:var(--text);margin:0;padding:0;height:100vh;display:flex;flex-direction:column}.view{display:none;padding:20px;height:100%;box-sizing:border-box;overflow-y:auto}.view.active{display:flex;flex-direction:column}input{width:100%;padding:12px;margin-bottom:12px;border:1px solid #ccc;border-radius:8px;font-size:16px;box-sizing:border-box}button{width:100%;padding:12px;background-color:var(--primary);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer}button:active{opacity:.9}button.secondary{background-color:#6b7280;margin-top:10px}button.danger{background-color:transparent;color:var(--danger);width:auto;padding:5px}#login-view{justify-content:center;align-items:center}.login-card{background:var(--card-bg);padding:2rem;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;width:100%;max-width:320px}.house-add-card{width:min(80%,320px);align-self:center;margin-left:auto;margin-right:auto;margin-bottom:16px}.search-header-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.search-controls{width:min(100%,720px);margin:0 auto}.houses-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.houses-summary{color:#666;margin:6px 0 0}.subtle-link-button{width:auto;padding:0;border:none;border-radius:0;background:none;color:#a8a29e;font-size:.82rem;font-weight:500;text-decoration:none}.subtle-link-button:active{transform:none;opacity:.7}.switch-house-link{flex-shrink:0}.search-container{position:sticky;top:0;background:var(--bg);z-index:10;padding-bottom:10px}.search-container:before,.detail-header:before{content:"";position:absolute;left:-20px;right:-20px;top:calc(-1*(20px + env(safe-area-inset-top,0px)));bottom:0;background:inherit;z-index:-1;pointer-events:none}.drawer-list{list-style:none;padding:0;margin:0}.drawer-card{background:var(--card-bg);padding:15px 38px 15px 15px;margin-bottom:10px;border-radius:8px;border-left:4px solid var(--primary);box-shadow:0 1px 3px #0000001a;cursor:pointer;transition:transform .1s;position:relative}.drawer-card:active{transform:scale(.98)}.drawer-name{font-weight:700;font-size:1.1em}.drawer-meta{color:#666;font-size:.9em;margin-top:4px}.drawer-meta-item.highlighted,.item-name.highlighted{font-weight:700;color:var(--text)}.drawer-image-indicators{position:absolute;top:10px;bottom:10px;right:10px;width:16px;pointer-events:none}.indicator-slot{position:absolute;right:0;color:#666;font-weight:700;line-height:1}.indicator-slot.top{top:0}.indicator-slot.bottom{bottom:0}#drawer-detail-view{background:var(--detail-bg)}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;position:sticky;top:0;z-index:10;background:var(--detail-bg);margin-bottom:8px;border-bottom:1px solid #eee;padding-bottom:8px}.detail-done-button{width:auto;background:none;color:var(--primary);padding:2px 0 0;line-height:1.2}.item-list{list-style:none;padding:0}.item-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #5a2508}.add-item-container{display:flex;gap:10px;margin-top:20px;padding-top:20px;border-top:1px solid #eee}.drawer-images{display:flex;flex-direction:column;align-items:center;gap:15px;margin-top:20px;padding-bottom:30px}.drawer-images img{width:90%;border-radius:8px;box-shadow:0 2px 8px #0000001a}.column-group{margin-bottom:15px}.column-header{background:#f7e4cd;padding:12px;border-radius:8px;border:1.5px solid #e0c9a8;cursor:pointer;display:flex;flex-direction:column;margin-bottom:5px}.column-title{font-weight:700;font-size:1.1em}.column-subtitle{color:#666;font-size:.9em}.column-drawers{display:none}.column-drawers.expanded{display:block}.drawer-card.inset{margin-left:20px}.room-list{display:grid;gap:12px;padding:8px 0 20px}.room-card{background:linear-gradient(145deg,#f7e6da,#f2d3bc);border:1px solid #e3bea3;border-radius:14px;padding:14px;box-shadow:0 8px 20px #79432214}.room-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.room-name-button{width:auto;padding:0;background:none;color:var(--text);border:none;border-bottom:1px dashed rgba(31,41,55,.25);border-radius:0;text-align:left;font-size:1.1rem;font-weight:700}.room-name-button:active{opacity:.7;transform:none}.room-code-label{margin-top:5px;color:#7a5d4a;font-size:.84rem;letter-spacing:.04em;text-transform:uppercase}.room-count-pill{flex-shrink:0;background:#ffffffb3;color:#7a4023;padding:7px 10px;border-radius:999px;font-size:.88rem;font-weight:700;border:none;cursor:pointer;width:auto}.room-count-pill:active{transform:none;opacity:.8}.room-edit-area{display:none;margin-top:12px;padding-top:12px;border-top:1px solid rgba(122,64,35,.15)}.room-edit-area.active{display:block}.room-edit-form{display:flex;gap:10px;align-items:center}.room-edit-input{margin-bottom:0;background:#ffffffe0;border-color:#d6b39a}.room-save-button{width:auto;white-space:nowrap}.inline-edit{border:1px solid transparent;background:transparent;padding:0 4px;border-radius:4px;transition:all .2s;width:100%;font-family:inherit;box-sizing:border-box}.inline-edit:focus{border-color:#ccc;background:#fff;outline:none}.theme-input{color:#666;font-style:italic;font-size:.9em;margin-top:0}.notes-input{margin-top:2px;margin-bottom:8px;min-height:40px;font-size:.9em;line-height:1.3;color:#444;resize:vertical;border-bottom:1px solid #eee}#uploadStatusOverlay{position:fixed;left:12px;right:12px;bottom:16px;display:flex;flex-direction:column;gap:8px;max-width:460px;margin:0 auto;z-index:1000;pointer-events:none}.upload-status-card{background:#222222f0;color:#f4f4f4;border-left:4px solid #4b5563;border-radius:10px;padding:10px 12px;box-shadow:0 6px 20px #0000003d;opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.upload-status-card.is-success{border-left-color:#2f9a4f}.upload-status-card.is-error{border-left-color:#d94a3a}.upload-status-card.is-fading{opacity:0;transform:translateY(8px)}.upload-status-title{font-size:.75rem;letter-spacing:.02em;text-transform:uppercase;color:#d2d2d2;margin-bottom:4px}.upload-status-text{font-size:.9rem;line-height:1.25}@media(max-width:640px){.houses-header,.room-card-header,.room-edit-form{flex-direction:column;align-items:stretch}.search-header-row{align-items:center}.subtle-link-button,.room-count-pill,.room-save-button,.room-name-button{width:100%}.switch-house-link{width:auto;text-align:right}.room-count-pill{box-sizing:border-box;text-align:center}}
