:root{--accent: #1e3a8a;--blue: #3b82f6;--blue-glow: rgba(59, 130, 246, .18);--blue-deep: #2563eb;--text: #111827;--text-secondary: #374151;--text-muted: #9ca3af;--border: #e5e7eb;--bg: #ffffff;--bg-sidebar: #f9fafb;--bg-hover: #f3f4f6;--bg-hover-strong: #e5e7eb;--reject: #dc2626;--reject-bg: #fef2f2}[data-theme=dark]{--accent: #60a5fa;--blue: #60a5fa;--blue-glow: rgba(96, 165, 250, .2);--blue-deep: #3b82f6;--text: #f1f5f9;--text-secondary: #d1d5db;--text-muted: #6b7280;--border: #2d3748;--bg: #111827;--bg-sidebar: #1a2234;--bg-hover: #1f2937;--bg-hover-strong: #374151;--reject: #f87171;--reject-bg: #7f1d1d}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;transition:background-color .2s ease,color .2s ease}.app{position:relative}.app__main{min-height:100vh}.sidebar{position:fixed;top:0;left:0;height:100vh;width:260px;background:var(--bg-sidebar);border-right:1px solid var(--border);transform:translate(-260px);transition:transform .22s ease,background-color .2s ease;z-index:100;display:flex;flex-direction:column}.sidebar--open{transform:translate(0)}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:99}.sidebar-toggle{position:fixed;top:.7rem;left:.7rem;z-index:50;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:.5rem;border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.sidebar-toggle:hover{background:var(--bg-hover);color:var(--text)}.sidebar__header{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;min-height:52px}.sidebar__logo{font-size:1rem;font-weight:600;color:var(--accent);letter-spacing:-.01em;padding-left:.25rem}.sidebar__header-actions{display:flex;gap:.15rem}.sidebar__icon-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:.5rem;border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.sidebar__icon-btn:hover{background:var(--bg-hover-strong);color:var(--text)}.sidebar__nav{flex:1;display:flex;flex-direction:column;padding:.5rem .5rem 0;gap:.15rem}.sidebar__footer{display:flex;align-items:center;gap:.25rem;padding:.5rem;border-top:1px solid var(--border)}.sidebar__item{display:flex;align-items:center;gap:.65rem;width:100%;padding:.6rem .75rem;border-radius:.5rem;border:none;background:transparent;color:var(--text-secondary);font-size:.875rem;font-family:inherit;text-align:left;cursor:pointer;transition:background .15s ease,color .15s ease}.sidebar__item--grow{flex:1;width:auto}.sidebar__item:hover{background:var(--bg-hover-strong);color:var(--text)}.welcome{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem 5rem}.welcome__body{width:100%;max-width:580px;display:flex;flex-direction:column;gap:1.5rem}.welcome__greeting{text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem}.welcome__logo{width:72px;height:72px}.welcome__title{font-size:1.9rem;font-weight:300;letter-spacing:-.02em;margin:0;color:var(--text)}.welcome__name{color:var(--accent);font-weight:600}.welcome__input{width:100%;padding:1rem 1.5rem;border-radius:9999px;border:1.5px solid var(--blue);box-shadow:0 0 0 4px var(--blue-glow),0 4px 20px #3b82f61a;font-size:1rem;font-family:inherit;color:var(--text);background:var(--bg);outline:none;transition:box-shadow .2s ease,background-color .2s ease}.welcome__input::placeholder{color:var(--text-muted)}.welcome__input:focus{box-shadow:0 0 0 5px #60a5fa42,0 6px 28px #60a5fa29}.welcome__actions{display:flex;gap:.65rem;justify-content:center;flex-wrap:wrap}.action-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem 1.1rem;border-radius:9999px;border:1.5px solid var(--border);background:var(--bg);color:var(--text-secondary);font-size:.875rem;font-family:inherit;cursor:pointer;transition:border-color .15s ease,color .15s ease,box-shadow .15s ease,background-color .2s ease}.action-pill:hover{border-color:var(--blue);color:var(--blue);box-shadow:0 2px 8px var(--blue-glow)}.welcome__disclaimer{position:absolute;bottom:1.5rem;left:0;right:0;font-size:.72rem;color:var(--text-muted);text-align:center;margin:0}.chat{display:flex;flex-direction:column;min-height:100vh}.chat__messages{flex:1;padding:2rem 1.5rem 1rem;display:flex;flex-direction:column;gap:1.25rem;max-width:816px;width:100%;margin:0 auto}.chat__footer{position:sticky;bottom:0;background:var(--bg);transition:background-color .2s ease}.chat__footer-inner{max-width:816px;width:100%;margin:0 auto;padding:.5rem 1.5rem .85rem}.chat__form-zone{width:600px}.chat__form{width:640px;margin-left:-20px}.chat__input{width:100%;padding:.85rem 1.25rem;border-radius:9999px;border:1.5px solid var(--blue);font-size:1rem;font-family:inherit;color:var(--text);background:var(--bg);outline:none;transition:box-shadow .2s ease,background-color .2s ease}.chat__input:focus{box-shadow:0 0 0 4px var(--blue-glow),0 4px 16px #3b82f61a}.chat__disclaimer{text-align:center;font-size:.72rem;color:var(--text-muted);margin:.5rem 0 0}.chat__input:disabled{opacity:.5;cursor:not-allowed}.message{display:flex;width:100%}.message--user{justify-content:flex-end}.message--clio{justify-content:flex-start}.message__bubble{background:transparent;color:var(--text);border:1.5px solid var(--accent);box-shadow:0 0 0 3px var(--blue-glow);padding:.65rem 1.1rem;border-radius:1.2rem 1.2rem .35rem;max-width:78%;font-size:.95rem;line-height:1.5;word-break:break-word}.message__text{max-width:78%;font-size:.95rem;line-height:1.65;color:var(--text);margin:0}.clio-spinner{animation:clio-spin 1.6s ease-in-out infinite;transform-origin:center;transform-box:fill-box;display:block}@keyframes clio-spin{0%{transform:rotate(0)}65%{transform:rotate(360deg)}to{transform:rotate(360deg)}}.confirm-prompt{display:flex;flex-direction:column;gap:.6rem}.confirm-prompt__text{font-size:.95rem;color:var(--text);margin:0}.confirm-prompt__actions{display:flex;gap:.4rem;flex-shrink:0}.confirm-btn{width:2rem;height:2rem;border-radius:.35rem;border:1.5px solid var(--blue);background:var(--bg);font-size:.85rem;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease;display:flex;align-items:center;justify-content:center}.confirm-btn--yes:hover:not(:disabled){border-color:#16a34a;color:#16a34a;background:#f0fdf4;box-shadow:none}.confirm-btn--no:hover:not(:disabled){border-color:#dc2626;color:#dc2626;background:#fef2f2;box-shadow:none}.confirm-btn--yes.confirm-btn--selected{border-color:#16a34a;color:#16a34a;background:#f0fdf4;box-shadow:none;cursor:default}.confirm-btn--no.confirm-btn--selected{border-color:#dc2626;color:#dc2626;background:#fef2f2;box-shadow:none;cursor:default}.confirm-btn--dismissed{border-color:var(--border);color:var(--text-muted);background:var(--bg);box-shadow:none;cursor:default}[data-theme=dark] .confirm-btn{color:var(--text)}[data-theme=dark] .confirm-btn--yes:hover:not(:disabled){border-color:#4ade80;color:#4ade80;background:#14532d}[data-theme=dark] .confirm-btn--no:hover:not(:disabled){border-color:#f87171;color:#f87171;background:#7f1d1d}[data-theme=dark] .confirm-btn--yes.confirm-btn--selected{border-color:#4ade80;color:#4ade80;background:#14532d;cursor:default}[data-theme=dark] .confirm-btn--no.confirm-btn--selected{border-color:#f87171;color:#f87171;background:#7f1d1d;cursor:default}.message--clio{flex-direction:column;gap:.75rem}.guideline-card{display:flex;gap:1rem;border:1.5px solid var(--blue);border-radius:.75rem;padding:.85rem;background:var(--bg);box-shadow:0 0 0 3px var(--blue-glow);max-width:600px}.guideline-card__left{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:.5rem}.guideline-card__thumbnail{width:108px;border:1.5px solid var(--blue);border-radius:.35rem;box-shadow:0 0 0 3px var(--blue-glow);overflow:hidden;cursor:pointer;background:none;padding:0;transition:box-shadow .15s ease}.guideline-card__thumbnail:hover{box-shadow:0 0 0 4px #60a5fa47}.guideline-card__thumb-placeholder{width:108px;height:153px;background:var(--bg-hover)}.guideline-card__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.3rem}.guideline-card__category{font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin:0}.guideline-card__title{font-size:.95rem;font-weight:600;color:var(--text);margin:0;line-height:1.35}.guideline-card__open-btn{display:inline-flex;align-items:center;gap:.25rem;background:none;border:none;color:var(--blue);font-size:.78rem;font-family:inherit;cursor:pointer;padding:0;text-align:center}.guideline-card__open-btn:hover{text-decoration:underline}.guideline-card__viewed{color:#16a34a;animation:name-swap .25s ease}.guideline-card__filename{font-size:.75rem;color:var(--text-muted);margin:0;line-height:1.4;opacity:.8}.guideline-card__metarow{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.1rem}.guideline-card__pill{font-size:.68rem;font-weight:500;color:var(--text-secondary);background:#7f7f7f1f;border-radius:.5rem;padding:.14rem .5rem;white-space:nowrap}.guideline-card__verified-note{display:inline-flex;align-items:center;gap:.25rem;font-size:.72rem;color:#16a34a;opacity:.85}@media (max-width: 480px){.guideline-card{flex-direction:column}.guideline-card__thumbnail{width:100%}.guideline-card__thumb-placeholder{width:100%;height:120px}}.guideline-suggestions{max-width:600px}.guideline-suggestions__heading{margin:0 0 .9rem;font-size:.9rem;color:var(--text-secondary)}.guideline-suggestions__rank{display:inline-block;font-weight:600;color:var(--text);animation:name-swap .28s ease}.guideline-suggestions__row{display:flex;align-items:stretch;gap:.6rem;padding-right:4px}.guideline-suggestions__scrollbar{position:relative;flex-shrink:0;width:10px;margin:16px 0;border-radius:9999px;border:1.5px solid var(--blue);background:var(--bg);box-shadow:0 0 0 3px var(--blue-glow);opacity:0;transform:translate(5px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}.guideline-suggestions__scrollbar--active{opacity:1;transform:translate(0);pointer-events:auto}.guideline-suggestions__thumb{position:absolute;left:1px;right:1px;top:0;min-height:28px;border-radius:9999px;background:var(--blue-deep);cursor:grab}.guideline-suggestions__thumb:active{cursor:grabbing}.guideline-suggestions__scroll{flex:1;min-width:0;max-height:240px;overflow-y:auto;scroll-snap-type:y mandatory;scrollbar-width:none}.guideline-suggestions__scroll::-webkit-scrollbar{display:none}.guideline-suggestions__content{display:flex;flex-direction:column;gap:.6rem;padding:16px 8px}.guideline-suggestions__item{scroll-snap-align:center;flex-shrink:0;opacity:0;transition:opacity .25s ease}.guideline-suggestions__item--focused,.guideline-suggestions--scrubbing .guideline-suggestions__item{opacity:1}.guideline-suggestions__confirm{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;margin-top:1.5rem;text-align:left}.guideline-suggestions__question{margin:0;font-size:.9rem;color:var(--text-secondary)}.guideline-suggestions__name{display:inline-block;font-weight:600;color:var(--text);animation:name-swap .28s ease}@keyframes name-swap{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.guideline-suggestions__hint{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:.1rem;font-size:.75rem;color:var(--text-muted);transition:opacity .2s ease}.guideline-suggestions__hint--hidden{opacity:0;pointer-events:none}.guideline-suggestions__hint svg{animation:suggestion-bounce 1.4s ease-in-out infinite}.guideline-suggestions__scroll--locked{overflow:hidden}.guideline-suggestions__pills{margin-top:.9rem;animation:name-swap .28s ease}@keyframes suggestion-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}.login-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:300;display:flex;align-items:center;justify-content:center;padding:1.5rem}.login-modal{background:var(--bg);border:1.5px solid var(--blue);box-shadow:0 0 0 3px var(--blue-glow),0 10px 40px #0003;border-radius:.9rem;width:100%;max-width:400px;padding:1.75rem 1.75rem 1.4rem;text-align:center}.login-modal__logo{display:flex;justify-content:center;margin-bottom:.6rem}.login-modal__title{font-size:1.3rem;font-weight:600;color:var(--text);margin:0 0 1.4rem}.login-modal__form,.login-modal__sent{display:flex;flex-direction:column;gap:.75rem}.login-modal__lead{font-size:.9rem;color:var(--text-secondary);margin:0;line-height:1.5}.login-modal__hint{font-size:.8rem;color:var(--text-muted);margin:0;line-height:1.5}.login-modal__domain{font-weight:600;color:var(--text-secondary)}.login-modal__field{position:relative}.login-modal__hint-pop{position:absolute;top:calc(100% + .5rem);left:50%;transform:translate(-50%);z-index:1;white-space:nowrap;background:var(--bg);border:1.5px solid var(--blue);box-shadow:0 0 0 3px var(--blue-glow);border-radius:.6rem;padding:.5rem .8rem;font-size:.8rem;color:var(--text-secondary);animation:name-swap .2s ease}.login-modal__hint-pop:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-bottom-color:var(--blue)}.login-modal__input{width:100%;padding:.8rem 1rem;border-radius:.6rem;border:1.5px solid var(--border);font-size:.95rem;font-family:inherit;text-align:center;color:var(--text);background:var(--bg);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.login-modal__input:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-glow)}.login-modal__input--code{text-transform:uppercase;letter-spacing:.35em;font-size:1.15rem;font-weight:600}.login-modal__input--code::placeholder{text-transform:none;letter-spacing:normal;font-size:.95rem;font-weight:400}.login-modal__submit,.login-modal__resend{padding:.75rem 1rem;border-radius:.6rem;border:none;background:var(--accent);color:#fff;font-size:.95rem;font-family:inherit;font-weight:500;cursor:pointer;transition:opacity .15s ease,background .15s ease}.login-modal__submit:hover:not(:disabled),.login-modal__resend:hover:not(:disabled){opacity:.9}.login-modal__submit:disabled,.login-modal__resend:disabled{opacity:.45;cursor:not-allowed}.login-modal__resend{background:transparent;color:var(--blue);border:1.5px solid var(--border);align-self:center}.login-modal__note{font-size:.72rem;color:var(--text-muted);text-align:center;margin:1.1rem 0 0;line-height:1.5}.pdf-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:200;display:flex;align-items:center;justify-content:center;padding:1.5rem}.pdf-modal{background:var(--bg);border-radius:.75rem;border:1px solid var(--border);display:flex;flex-direction:column;max-height:90vh;overflow:hidden;width:fit-content;max-width:calc(100vw - 3rem)}.pdf-modal__header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border);gap:1rem;flex-shrink:0}.pdf-modal__title{font-size:.9rem;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdf-modal__close{background:none;border:none;color:var(--text-muted);font-size:1rem;cursor:pointer;flex-shrink:0;padding:.1rem .3rem;border-radius:.3rem;transition:color .15s ease,background .15s ease}.pdf-modal__close:hover{color:var(--text);background:var(--bg-hover)}.pdf-modal__body{overflow-y:auto;flex:1}.pdf-modal__loading{padding:3rem;text-align:center;color:var(--text-muted);font-size:.9rem}.pdf-modal__nav{display:flex;align-items:center;justify-content:center;gap:1.25rem;padding:.65rem 1rem;border-top:1px solid var(--border);flex-shrink:0}.pdf-modal__nav button{background:none;border:1px solid var(--border);border-radius:.4rem;color:var(--text);width:2rem;height:2rem;cursor:pointer;font-size:1rem;transition:background .15s ease}.pdf-modal__nav button:hover:not(:disabled){background:var(--bg-hover)}.pdf-modal__nav button:disabled{opacity:.35;cursor:default}.pdf-modal__nav span{font-size:.85rem;color:var(--text-secondary);min-width:5rem;text-align:center}.info-card{border:1.5px solid var(--blue);border-radius:.75rem;box-shadow:0 0 0 3px var(--blue-glow);background:var(--bg);max-width:600px;overflow:hidden}.info-card__title{font-size:.78rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);margin:0;padding:.75rem 1rem .6rem;border-bottom:1px solid var(--border)}.contact-group:not(:last-child){border-bottom:1px solid var(--border)}.contact-group__label{font-size:.68rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);margin:0;padding:.55rem 1rem .15rem}.contact-list{list-style:none;margin:0;padding:0 0 .35rem}.contact-list__row{display:flex;align-items:center;gap:.75rem;padding:.4rem 1rem;font-size:.875rem}.contact-list__name{flex:1;color:var(--text);line-height:1.35}.contact-list__number{font-family:ui-monospace,monospace;font-size:.85rem;color:var(--text-secondary);flex-shrink:0}.chat-pills{display:flex;flex-wrap:wrap;gap:.5rem}.chat-pill{display:inline-flex;align-items:center;padding:.5rem 1.1rem;border-radius:.75rem;border:1.5px solid var(--blue);background:var(--bg);color:var(--blue);font-size:.875rem;font-family:inherit;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.chat-pill:hover:not(:disabled){background:var(--blue-glow)}.chat-pill--active{background:var(--accent);border-color:var(--accent);color:#fff;cursor:default}.chat-pill--dismissed{border-color:var(--border);color:var(--text-muted);cursor:default}.chat-pill--untried{box-shadow:0 0 0 3px var(--blue-glow)}.chat-pill--selected{background:var(--accent);border-color:var(--accent);color:#fff}.chat-pill--viewed{border-color:var(--border);background:var(--bg-hover);color:var(--text-secondary)}.chat-pill--rejected{border-color:var(--reject);background:var(--reject-bg);color:var(--reject);cursor:default}.specialty-card__pills{display:flex;flex-wrap:wrap;gap:.75rem;padding:.9rem 1rem 1rem}.card-morph{animation:card-morph .22s ease-out}@keyframes card-morph{0%{opacity:0;transform:translateY(-2px) scale(.985)}to{opacity:1;transform:none}}.referral-instructions{margin:0;padding:.85rem 1rem;font-family:inherit;font-size:.875rem;line-height:1.65;color:var(--text);white-space:pre-wrap;word-break:break-word}
