.app{display:flex;flex-direction:column;height:100dvh;max-width:640px;margin:0 auto;padding:16px;gap:16px}.app-header{display:flex;align-items:center;justify-content:space-between;padding-top:4px}.app-header-left{display:flex;align-items:baseline;gap:12px;min-width:0}.app-title{font-size:1.1rem;font-weight:600;letter-spacing:-.01em}.app-status{font-size:.85rem;color:#5a6b58;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-needs-help-badge{background:#c84747;color:#ebf6ee;border-radius:999px;padding:1px 8px;font-size:.72rem;font-weight:600;letter-spacing:.02em;line-height:1.5}.signin-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px 0}.signin-title{font-size:2.2rem;font-weight:600;margin:0;letter-spacing:-.02em}.signin-subtitle{margin:0 0 16px;color:#5a6b58;font-size:1rem}.onboarding-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px 0;text-align:center}.onboarding-title{font-size:2.2rem;font-weight:600;margin:0;letter-spacing:-.02em}.onboarding-question{margin:0 0 16px;color:#2a3a28;font-size:1.1rem;max-width:32ch}.onboarding-choices{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.onboarding-choice{padding:14px 28px;font-size:1rem;font-weight:500;background:#ebf7f0;border:1px solid rgba(0,0,0,.08);border-radius:12px;min-width:160px;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a;transition:background-color .12s ease,border-color .12s ease,transform 80ms ease,box-shadow .12s ease}.onboarding-choice:hover:not(:disabled){background:#9bbfa5;border-color:#0000002e}.onboarding-choice:active:not(:disabled){transform:scale(.98);box-shadow:0 1px 1px #0000000f}.onboarding-choice:disabled{opacity:.5;cursor:wait}.onboarding-choice:focus-visible{outline:2px solid rgba(0,0,0,.4);outline-offset:2px}.onboarding-error{margin-top:8px;color:#a14242;font-size:.9rem}.welcome-card,.current-card,.recent-list-item,.directory-item,.chat-msg-user{background:#ebf7f0;border:1px solid rgba(0,0,0,.08);box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a}.chat-input,.directory-search{background:#ebf7f0;border:1px solid rgba(0,0,0,.22);outline:none;transition:border-color .12s ease,background-color .12s ease}.chat-input:focus,.directory-search:focus{border-color:#00000073}.chat-input::placeholder,.directory-search::placeholder{color:#7a8a78}.welcome-card{border-radius:16px;padding:24px;width:100%;display:flex;flex-direction:column;gap:8px}.welcome-card-eyebrow{margin:0;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;color:#5a6b58}.welcome-card-address{margin:0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:1.05rem;font-weight:500;word-break:break-all}.welcome-card-hint{margin:4px 0 0;color:#5a6b58;font-size:.95rem;line-height:1.5}.current-card{border-radius:16px;padding:24px;width:100%;display:flex;flex-direction:column;gap:8px}.current-card-counter{margin:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#5a6b58;align-self:flex-end}.current-card-eyebrow{margin:0;font-size:.78rem;color:#5a6b58}.current-card-sender{margin:0;font-size:1.4rem;font-weight:600;letter-spacing:-.01em}.current-card-body{margin:4px 0 12px;color:#2a3a28;font-size:1rem;line-height:1.5}.current-card-body strong{font-weight:600}.current-card-actions{display:flex;flex-wrap:wrap;gap:8px}.current-card-confirm,.current-card-edit,.current-card-skip{padding:10px 18px;font-size:.92rem;font-weight:500;border-radius:10px;border:1px solid rgba(0,0,0,.18);background:transparent;transition:background-color .12s ease,border-color .12s ease,transform 80ms ease}.current-card-confirm{background:#9bbfa5;border-color:#00000038}.current-card-confirm:hover:not(:disabled){background:#82a78c}.current-card-edit:hover:not(:disabled),.current-card-skip:hover:not(:disabled){background:#9bbfa5;border-color:#00000052}.current-card-confirm:active:not(:disabled),.current-card-edit:active:not(:disabled),.current-card-skip:active:not(:disabled){transform:scale(.98)}.current-card-confirm:disabled,.current-card-edit:disabled,.current-card-skip:disabled{opacity:.5;cursor:not-allowed}.current-card-folders{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 12px}.current-card-folder{padding:8px 14px;font-size:.88rem;border-radius:999px;border:1px solid rgba(0,0,0,.18);background:transparent;color:#2a3a28;transition:background-color .12s ease,border-color .12s ease}.current-card-folder:hover:not(:disabled){background:#9bbfa5;border-color:#0000004d}.current-card-folder.active{background:#9bbfa5;border-color:#00000073;font-weight:500}.recent-list{display:flex;flex-direction:column;gap:6px}.recent-list-title{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#5a6b58;margin:0;padding-left:4px;font-weight:500}.recent-list-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.recent-list-item{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;border-radius:8px;font-size:.88rem;gap:12px}.recent-list-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.recent-list-status{font-size:.72rem;color:#5a6b58;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.recent-list-status.status-failed{color:#a14242}.recent-list-item-classified{opacity:.55}.recent-list-item-classified:hover{opacity:1}.recent-list-remove{color:#5a6b58;font-size:1.1rem;line-height:1;padding:4px 8px;border-radius:8px;opacity:0;transition:opacity .12s ease,background-color .12s ease,color .12s ease}.recent-list-item:hover .recent-list-remove,.recent-list-remove:focus-visible{opacity:1}.recent-list-remove:hover{background:#0000001a;color:#2a3a28}.card-area-chat{align-items:stretch;justify-content:flex-start;overflow:hidden;position:relative}.chat-transcript{flex:1;min-height:0;width:100%;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:4px 2px}.chat-transcript-close{position:sticky;top:0;align-self:flex-end;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;font-size:1.15rem;line-height:1;color:#5a6b58;background:#c5d9cdeb;border:1px solid rgba(0,0,0,.15);border-radius:8px;transition:background-color .12s ease,color .12s ease,border-color .12s ease;z-index:1;margin-bottom:-28px}.chat-transcript-close:hover{background:#9bbfa5;color:#2a3a28;border-color:#0000004d}.chat-msg{max-width:80%;padding:10px 14px;border-radius:14px;font-size:.97rem;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.chat-msg-user{align-self:flex-end}.chat-msg-assistant{align-self:flex-start;background:transparent;border:none;padding-left:4px;padding-right:0}.chat-msg-streaming{opacity:.92}.chat-typing{color:#5a6b58;letter-spacing:.2em}.card-area{flex:1;min-height:0;display:flex;align-items:center;justify-content:center}.empty-state{color:#5a6b58;text-align:center;font-size:1.05rem;margin:0}.directory{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.directory-toolbar{display:flex;gap:8px;align-items:center}.directory-search{flex:1;padding:12px 14px;border-radius:12px}.directory-close{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;font-size:1.2rem;line-height:1;color:#5a6b58;border:1px solid rgba(0,0,0,.18);border-radius:10px;flex-shrink:0;background:transparent;transition:background-color .12s ease,color .12s ease,border-color .12s ease}.directory-close:hover{background:#9bbfa5;color:#2a3a28;border-color:#00000052}.directory-folders{display:flex;gap:6px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:thin}.directory-folder{flex-shrink:0;padding:6px 14px;font-size:.85rem;border-radius:999px;border:1px solid rgba(0,0,0,.18);background:transparent;color:#2a3a28;white-space:nowrap;transition:background-color .12s ease,border-color .12s ease}.directory-folder:hover{background:#9bbfa5;border-color:#0000004d}.directory-folder.active{background:#9bbfa5;border-color:#00000073;font-weight:500}.directory-entities-bar{border-top:1px solid rgba(0,0,0,.08);padding-top:6px}.directory-entity-kind-label{flex-shrink:0;display:inline-flex;align-items:center;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:#5a6b58;padding:0 4px;margin-right:-2px}.directory-entity-pill{border-left-width:3px}.directory-entity-pill-person{border-left-color:#5a8e6a}.directory-entity-pill-property{border-left-color:#7d6f4a}.directory-entity-pill-vehicle{border-left-color:#4a6884}.directory-entity-pill-organization{border-left-color:#7d4a7a}.directory-entity-pill-wrap{position:relative;display:inline-flex;flex-shrink:0}.directory-entity-pill-wrap .directory-folder{padding-right:22px}.directory-entity-pill-remove{position:absolute;right:2px;top:50%;transform:translateY(-50%);width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;line-height:1;color:#5a6b58;background:transparent;border:none;border-radius:4px;opacity:0;transition:opacity .12s ease,background-color .12s ease,color .12s ease}.directory-entity-pill-wrap:hover .directory-entity-pill-remove,.directory-entity-pill-remove:focus-visible{opacity:1}.directory-entity-pill-remove:hover{background:#c8474726;color:#a14242}.directory-list-wrap{flex:1;min-height:0;overflow-y:auto}.directory-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.directory-item{padding:12px 14px;border-radius:10px;display:flex;flex-direction:column;gap:4px}.directory-item-name{font-size:.97rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.directory-item-meta{font-size:.8rem;color:#5a6b58}.directory-empty{color:#5a6b58;text-align:center;margin:32px 0;font-size:.95rem}.doc-detail{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px;overflow:hidden}.doc-detail-header{display:flex;align-items:center;gap:12px}.doc-detail-back{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;font-size:1.2rem;line-height:1;color:#2a3a28;border:1px solid rgba(0,0,0,.18);border-radius:10px;flex-shrink:0;background:transparent;transition:background-color .12s ease,border-color .12s ease}.doc-detail-back:hover{background:#9bbfa5;border-color:#00000052}.doc-detail-title{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.doc-detail-meta{display:grid;grid-template-columns:max-content 1fr;column-gap:12px;row-gap:4px;margin:0;padding:14px 16px;background:#ebf7f0;border:1px solid rgba(0,0,0,.08);border-radius:12px;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a}.doc-detail-meta-row{display:contents}.doc-detail-meta-label{margin:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#5a6b58;align-self:center}.doc-detail-meta-value{margin:0;font-size:.95rem;word-break:break-word}.doc-detail-tags,.directory-item-tags,.doc-detail-entities,.directory-item-entities{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px}.doc-detail-tag,.directory-item-tag{font-size:.72rem;font-weight:500;padding:2px 8px;border-radius:999px;background:#9bbfa566;color:#2a3a28;letter-spacing:.01em}.doc-detail-entity,.directory-item-entity{font-size:.78rem;font-weight:500;padding:3px 10px;border-radius:8px;background:#ebf7f0;color:#1a1a1a;border:1px solid rgba(0,0,0,.1);border-left-width:3px}.doc-detail-entity-person,.directory-item-entity-person{border-left-color:#5a8e6a}.doc-detail-entity-property,.directory-item-entity-property{border-left-color:#7d6f4a}.doc-detail-entity-vehicle,.directory-item-entity-vehicle{border-left-color:#4a6884}.doc-detail-entity-organization,.directory-item-entity-organization{border-left-color:#7d4a7a}.directory-item-tags,.directory-item-entities{margin-top:2px}.doc-detail-actions{display:flex;gap:8px;flex-wrap:wrap}.doc-detail-action{padding:8px 16px;font-size:.88rem;font-weight:500;border-radius:10px;border:1px solid rgba(0,0,0,.18);background:transparent;color:#2a3a28;transition:background-color .12s ease,border-color .12s ease,transform 80ms ease}.doc-detail-action:hover:not(:disabled){background:#9bbfa5;border-color:#00000052}.doc-detail-action:active:not(:disabled){transform:scale(.98)}.doc-detail-action:disabled{opacity:.5;cursor:wait}.doc-detail-action-danger{color:#c84747;border-color:#c8474766}.doc-detail-action-danger:hover:not(:disabled){background:#c84747;color:#ebf6ee;border-color:#c84747}.doc-detail-action-error{margin:-4px 0 0;color:#a14242;font-size:.85rem}.doc-detail-body{flex:1;min-height:0;overflow-y:auto;margin:0;padding:16px;background:#ebf7f0;border:1px solid rgba(0,0,0,.08);border-radius:12px;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.85rem;line-height:1.5;white-space:pre-wrap;word-wrap:break-word;color:#1a1a1a}.recent-list-item-clickable,.directory-item-clickable{cursor:pointer;transition:transform 80ms ease,box-shadow .12s ease}.recent-list-item-clickable:hover,.directory-item-clickable:hover{box-shadow:0 2px 6px #0000001a,0 1px 2px #0000000f}.recent-list-item-clickable:active,.directory-item-clickable:active{transform:scale(.99)}.recent-list-item-clickable:focus-visible,.directory-item-clickable:focus-visible{outline:2px solid rgba(0,0,0,.4);outline-offset:2px}.chat-bar{display:flex;width:100%}.chat-input{flex:1;padding:14px 16px;border-radius:14px}.bottom-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.bottom-bar-button{padding:12px 8px;font-size:.875rem;color:#2a3a28;border-radius:10px;transition:background-color .12s ease}.bottom-bar-button:hover{background-color:#00000014}.bottom-bar-button:active{background-color:#0000001f}.bottom-bar-button:focus-visible{outline:2px solid rgba(0,0,0,.4);outline-offset:2px}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#1a1a1a;background-color:#c5d9cd;line-height:1.5}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{min-height:100dvh}button{font-family:inherit;font-size:inherit;background:none;border:none;color:inherit;cursor:pointer;padding:0}input,textarea{font-family:inherit;font-size:inherit;color:inherit}
