*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,sans-serif;background:#faf9f7;color:#1a1a1a}main{max-width:480px;margin:0 auto;padding:1.25rem;display:flex;flex-direction:column;gap:1rem}header{display:flex;justify-content:space-between;align-items:baseline}h1{font-size:1.5rem;margin:0}h2{font-size:1.15rem;margin:.5rem 0 0}h3{font-size:1rem;margin:.5rem 0 0}form{display:flex;flex-direction:column;gap:.5rem}input,select{padding:.6rem;font-size:1rem;border:1px solid #ccc;border-radius:6px}button,.button{padding:.6rem 1rem;font-size:1rem;border:none;border-radius:6px;background:#1a4f8b;color:#fff;cursor:pointer;text-align:center;text-decoration:none;display:inline-block}button:disabled{background:#aaa;cursor:not-allowed}ul{padding-left:1.25rem;margin:.25rem 0}[role=alert]{color:#b00020}.invite-row{display:flex;gap:8px;align-items:center}.header-name{max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.display-name-nudge{display:flex;align-items:baseline;gap:.4rem;font-size:.9rem;color:#444;background:#f0ede6;border-radius:6px;padding:.5rem .75rem;margin:0}.display-name-nudge-text{flex:1 1 auto;min-width:0}.display-name-nudge-text a{white-space:nowrap}.display-name-nudge .dismiss{flex:0 0 auto;padding:0 .4rem;background:transparent;color:#666;font-size:1.1rem;line-height:1.4}.display-name-nudge .dismiss:hover{color:#1a1a1a}.member-role{white-space:nowrap}.place-search input,.category-picker input{width:100%}.place-list li,.category-list li{display:flex;align-items:center;gap:.5rem}.row-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mode-select{flex:0 0 auto;padding:.35rem .4rem;font-size:.95rem}.new-party{border-top:1px solid #e5e2dd;padding-top:.75rem;margin-top:.5rem}.new-party h3{margin-top:0;font-weight:600}.new-party .hint{margin:0 0 .5rem;color:#666;font-size:.9rem}button.secondary{background:transparent;color:#1a4f8b;border:1px solid #1a4f8b}button.secondary:hover{background:#eef3f9}.place-search{position:relative}.place-results{position:absolute;top:100%;left:0;right:0;z-index:10;margin:.25rem 0 0;padding:0;list-style:none;background:#fff;border:1px solid #ccc;border-radius:6px;max-height:260px;overflow-y:auto;box-shadow:0 4px 12px #0000001f}.place-results li{margin:0}.place-results button{display:block;width:100%;padding:.5rem .75rem;background:transparent;color:#1a1a1a;text-align:left;border-radius:0}.place-results button:hover,.place-results button.active{background:#f0f0f0}.place-results strong{font-weight:600}.place-results small{display:block;color:#666}.place-hint{font-size:.85rem;color:#666;margin:.25rem 0 0}.place-attrib{font-size:.7rem;color:#999;margin:.25rem 0 0}.place-fallback{font-size:.8rem;color:#666;margin:.35rem 0 0}.place-fallback strong{font-weight:600}.place-list,.category-list{list-style:none;padding-left:0}.place-list li,.category-list li{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.35rem 0;border-bottom:1px solid #eee}.place-list li select,.category-list li select{padding:.3rem .4rem;font-size:.85rem}.place-list li button,.category-list li button{margin-left:auto;padding:.3rem .6rem;font-size:.85rem;background:transparent;color:#b00020;border:1px solid #b00020}.place-list li button:hover,.category-list li button:hover{background:#fdecea}.category-picker{position:relative}.category-results{position:absolute;top:100%;left:0;right:0;z-index:10;margin:.25rem 0 0;padding:0;list-style:none;background:#fff;border:1px solid #ccc;border-radius:6px;max-height:260px;overflow-y:auto;box-shadow:0 4px 12px #0000001f}.category-results li{margin:0}.category-results button{display:block;width:100%;padding:.5rem .75rem;background:transparent;color:#1a1a1a;text-align:left;border-radius:0}.category-results button:hover,.category-results button.active{background:#f0f0f0}.category-results strong{font-weight:600}.category-results small{display:block;color:#666}.captures{border-top:1px solid #e5e2dd;padding-top:.75rem;margin-top:.5rem}.capture-list{list-style:none;padding-left:0;display:flex;flex-direction:column;gap:.75rem}.capture-card{border:1px solid #e5e2dd;border-radius:8px;padding:.75rem;background:#fff;display:flex;flex-direction:column;gap:.35rem}.capture-card a{font-weight:600;color:#1a1a1a;text-decoration:none}.capture-card a:hover{text-decoration:underline}.capture-meta{margin:0;color:#444;font-size:.9rem}.capture-card button{align-self:flex-start}.case-file .headline{font-size:1.1rem;margin:0}.case-file .watched{color:#666;font-size:.9rem;margin:0}.case-file .merged{border-top:1px solid #e5e2dd;padding-top:.75rem;margin-top:.5rem}
