.encryption-backdrop{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;background:#fffc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100}.encryption-modal{width:100%;max-width:360px;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000001f}.encryption-modal h2{margin:0 0 .5rem;font-size:1.25rem}.encryption-modal p{margin:0 0 1.5rem;color:#666;font-size:.875rem;line-height:1.4}.encryption-modal form{display:flex;flex-direction:column;gap:1rem}.encryption-modal input{padding:.625rem .75rem;border:1px solid #ccc;border-radius:6px;font-size:1rem;outline:none}.encryption-modal input:focus{border-color:#333}.encryption-modal button{padding:.625rem 1rem;border:none;border-radius:6px;background:#111;color:#fff;font-size:1rem;cursor:pointer}.encryption-modal button:disabled{opacity:.6;cursor:not-allowed}.encryption-error{color:#d32f2f;font-size:.875rem;margin:0}.encryption-loading{display:flex;align-items:center;justify-content:center;gap:.5rem}.encryption-spinner{width:1rem;height:1rem;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:encryption-spin .6s linear infinite}@keyframes encryption-spin{to{transform:rotate(360deg)}}.encryption-hint{color:#999;font-size:.8rem;text-align:center;margin:0}.packlist-container{min-height:100vh;display:flex;justify-content:center;padding:2rem 1rem}.packlist-content{width:100%;max-width:600px}.packlist-blurred{filter:blur(4px);pointer-events:none;-webkit-user-select:none;user-select:none}.packlist-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.packlist-header h1{font-size:1.5rem;margin:0}.packlist-header-right{display:flex;align-items:center;gap:1rem}.packlist-email{color:#666;font-size:.875rem}.packlist-logout{background:none;border:none;color:#666;cursor:pointer;font-size:.875rem;padding:0;text-decoration:underline}.packlist-create{display:flex;gap:.5rem;margin-bottom:1.5rem}.packlist-create input{flex:1;padding:.625rem .75rem;border:1px solid #ccc;border-radius:6px;font-size:1rem;outline:none}.packlist-create input:focus{border-color:#333}.packlist-create button{padding:.625rem 1rem;border:none;border-radius:6px;background:#111;color:#fff;font-size:1rem;cursor:pointer;white-space:nowrap}.packlist-create button:disabled{opacity:.6;cursor:not-allowed}.packlist-error{color:#d32f2f;font-size:.875rem;margin:0 0 1rem}.packlist-empty{color:#666;font-size:.9rem;text-align:center;margin-top:2rem}.packlist-list{list-style:none;padding:0;margin:0}.packlist-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #eee}.packlist-item:first-child{border-top:1px solid #eee}.packlist-item-name{background:none;border:none;font-size:1rem;cursor:pointer;padding:0;text-align:left;flex:1}.packlist-item-name:hover{color:#555}.packlist-edit-form{flex:1}.packlist-edit-form input{width:100%;padding:.375rem .5rem;border:1px solid #333;border-radius:4px;font-size:1rem;outline:none}.packlist-item-actions{display:flex;gap:.75rem;margin-left:1rem}.packlist-action{background:none;border:none;color:#888;cursor:pointer;font-size:.8rem;padding:0}.packlist-action:hover{color:#333}.packlist-action-delete:hover{color:#d32f2f}.packdetail-container{min-height:100vh;display:flex;justify-content:center;padding:2rem 1rem}.packdetail-content{width:100%;max-width:600px}.packdetail-header{margin-bottom:1.5rem}.packdetail-back{background:none;border:none;color:#666;cursor:pointer;font-size:.875rem;padding:0;margin-bottom:.5rem;display:block}.packdetail-back:hover{color:#333}.packdetail-header h1{font-size:1.5rem;margin:0}.packdetail-create{display:flex;gap:.5rem;margin-bottom:1.5rem;align-items:flex-end}.packdetail-create-fields{flex:1;display:flex;flex-direction:column;gap:.5rem}.packdetail-create input{padding:.625rem .75rem;border:1px solid #ccc;border-radius:6px;font-size:1rem;outline:none;width:100%}.packdetail-create input:focus{border-color:#333}.packdetail-create>button{padding:.625rem 1rem;border:none;border-radius:6px;background:#111;color:#fff;font-size:1rem;cursor:pointer;white-space:nowrap;align-self:flex-end}.packdetail-create>button:disabled{opacity:.6;cursor:not-allowed}.packdetail-error{color:#d32f2f;font-size:.875rem;margin:0 0 1rem}.packdetail-empty{color:#666;font-size:.9rem;text-align:center;margin-top:2rem}.packdetail-list{list-style:none;padding:0;margin:0}.packdetail-card{padding:1rem 0;border-bottom:1px solid #eee}.packdetail-card:first-child{border-top:1px solid #eee}.packdetail-card-content{display:flex;gap:2rem;margin-bottom:.5rem}.packdetail-card-side{flex:1;display:flex;flex-direction:column;gap:.25rem}.packdetail-card-label{font-size:.75rem;color:#999;text-transform:uppercase;letter-spacing:.05em}.packdetail-card-actions{display:flex;gap:.75rem}.packdetail-action{background:none;border:none;color:#888;cursor:pointer;font-size:.8rem;padding:0}.packdetail-action:hover{color:#333}.packdetail-action-delete:hover{color:#d32f2f}.packdetail-card-edit{display:flex;flex-direction:column;gap:.5rem}.packdetail-card-edit input{padding:.5rem .625rem;border:1px solid #333;border-radius:4px;font-size:1rem;outline:none}.packdetail-card-edit-actions{display:flex;gap:.5rem}.packdetail-save{padding:.375rem .75rem;border:none;border-radius:6px;background:#111;color:#fff;font-size:.875rem;cursor:pointer}.packdetail-cancel{padding:.375rem .75rem;border:1px solid #ccc;border-radius:6px;background:#fff;color:#333;font-size:.875rem;cursor:pointer}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh}.login-card{width:100%;max-width:360px;padding:2rem}.login-card h1{margin:0 0 .5rem;font-size:1.5rem}.login-card p{margin:0 0 1.5rem;color:#666;font-size:.9rem}.login-card form{display:flex;flex-direction:column;gap:1rem}.login-card input{padding:.625rem .75rem;border:1px solid #ccc;border-radius:6px;font-size:1rem;outline:none}.login-card input:focus{border-color:#333}.login-card button{padding:.625rem 1rem;border:none;border-radius:6px;background:#111;color:#fff;font-size:1rem;cursor:pointer}.login-card button:disabled{opacity:.6;cursor:not-allowed}.login-error{color:#d32f2f;font-size:.875rem;margin:0}.login-back{background:none;border:none;color:#666;cursor:pointer;font-size:.875rem;padding:0;text-decoration:underline}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,-apple-system,sans-serif}
