:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f5f2;--surface:#fff;--text:#1f1f1e;--text-muted:#8b8a86;--border:#1f1f1e14;--accent:#4f5c3d;--accent-contrast:#f6f5f2;--espresso:#2e2d2b;--pill:#e9e8e5;--pill-hover:#e0dfdb;--danger:#a5442f;--shadow-soft:0 1px 2px #1f1f1e0a, 0 6px 20px #1f1f1e0d;--serif:"Playfair Display", ui-serif, Georgia, serif;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);margin:0}h1,h2,h3,h4{font-family:var(--serif);letter-spacing:-.01em;font-weight:400}h2{margin:0 0 1.5rem;font-size:2.3rem;line-height:1.15}h3{font-size:1.5rem;font-weight:500}.kicker{letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .3rem;font-size:.72rem}.app-shell{flex-direction:column;max-width:640px;min-height:100dvh;margin:0 auto;display:flex}.app-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.app-header h1{font-family:var(--serif);letter-spacing:.02em;margin:0;font-size:1.5rem;font-weight:500}.app-logo{width:auto;height:38px;display:block}.login-logo{width:min(280px,70vw);height:auto;display:block}.app-main{flex:1;padding:1.5rem 1.5rem 5rem;overflow-y:auto}.app-nav{border-top:1px solid var(--border);background:var(--bg);display:flex;position:sticky;bottom:0}.app-nav a{text-align:center;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);flex:1;padding:.75rem .25rem;font-size:.68rem;text-decoration:none}.app-nav a.active{color:var(--espresso)}.btn{cursor:pointer;background:var(--pill);color:var(--espresso);border:none;border-radius:999px;padding:.75rem 1.4rem;font-family:inherit;font-size:.9rem;transition:background-color .15s}.btn:hover:not(:disabled){background:var(--pill-hover)}.btn.secondary{background:var(--surface);color:var(--espresso);box-shadow:var(--shadow-soft)}.btn.secondary:hover:not(:disabled){background:var(--pill)}.btn.danger{background:color-mix(in srgb, var(--danger) 10%, transparent);color:var(--danger)}.btn.danger:hover:not(:disabled){background:color-mix(in srgb, var(--danger) 16%, transparent)}.btn:disabled{opacity:.5;cursor:default}input[type=text],input[type=date],select,textarea{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:14px;width:100%;padding:.75rem 1rem;font-family:inherit;font-size:.95rem}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%238b8a86' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;padding-right:2.2rem}input[type=text]:focus,input[type=date]:focus,select:focus,textarea:focus{border-color:#1f1f1e38;outline:none;box-shadow:0 0 0 3px #1f1f1e0d}.card{background:var(--surface);box-shadow:var(--shadow-soft);border:1px solid #0000;border-radius:20px;margin-bottom:1rem;padding:1.25rem}.card-link{color:inherit;text-decoration:none;display:block}.card-title{font-family:var(--serif);margin:0 0 .15rem;font-size:1.25rem;font-weight:500}.card-subtitle{color:var(--text-muted);margin:0;font-size:.85rem}.row{align-items:center;gap:.5rem;display:flex}.row-between{justify-content:space-between;align-items:center;display:flex}.stack{flex-direction:column;gap:.75rem;display:flex}.category-section{margin-bottom:2rem}.category-title{text-transform:uppercase;letter-spacing:.18em;color:var(--text-muted);margin:0 0 .85rem;font-size:.72rem}.trip-note,.trip-note-input{white-space:pre-wrap;resize:vertical;margin:0 0 1.25rem;font-style:italic}.trip-note{border-left:2px solid var(--espresso);padding:.2rem 0 .2rem .8rem}.dropdown-panel{background:var(--surface);box-shadow:var(--shadow-soft), 0 12px 32px #1f1f1e14;border-radius:14px;overflow:hidden}.item-cards{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.item-card{background:var(--surface);box-shadow:var(--shadow-soft);border-radius:18px;align-items:center;gap:.9rem;padding:.9rem 1rem .9rem 1.1rem;display:flex}.item-card-name{flex:1;min-width:0}.item-card-thumb{object-fit:cover;border-radius:12px;flex-shrink:0;width:44px;height:44px}.item-card-thumb-empty{background:var(--bg);color:var(--text-muted);justify-content:center;align-items:center;text-decoration:none;display:flex}.item-card-thumb-empty:hover{color:var(--espresso)}.item-card label{cursor:pointer;flex:1}.item-card.checked label{color:var(--text-muted);text-decoration:line-through}.item-card input[type=checkbox]{width:1.15rem;height:1.15rem}.icon-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:.2rem .4rem;font-size:1rem}.icon-btn:hover{color:var(--danger)}.empty-state{color:var(--text-muted);text-align:center;padding:2rem 1rem}.error-banner{background:color-mix(in srgb, var(--danger) 15%, transparent);color:var(--danger);border-radius:8px;margin-bottom:.75rem;padding:.6rem .8rem;font-size:.9rem}.list-name{font-family:var(--serif);margin:0;font-size:1.25rem;font-weight:500}.list-type{letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);margin:.15rem 0 0;font-size:.72rem}.centered{text-align:center;justify-content:center;align-items:center;min-height:100dvh;padding:1.5rem;display:flex}
