:root{--background: #ffffff;--foreground: #09090b;--primary: #18181b;--primary-foreground: #fafafa;--secondary: #f4f4f5;--secondary-foreground: #18181b;--muted: #f4f4f5;--muted-foreground: #71717a;--accent: #f4f4f5;--border: #e4e4e7;--radius: .375rem;--radius-lg: .5rem;--radius-md: .375rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background-color:#fafafa;color:var(--foreground);line-height:1.6;font-size:14px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:2rem 1.25rem;min-height:100vh}a{color:var(--primary);text-decoration:none;transition:color .15s ease}a:hover{color:var(--muted-foreground)}.container{max-width:42rem;margin:0 auto}.card{background:var(--background);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 1px 3px #0000000d;overflow:hidden}.card-header{padding:1.5rem 1.5rem 0}.card-title{font-size:1.25rem;font-weight:600;letter-spacing:-.025em;line-height:1.3;color:var(--foreground)}.card-description{font-size:.875rem;color:var(--muted-foreground);margin-top:.25rem}.separator{height:1px;background:var(--border);margin:1.25rem 1.5rem 0}.card-body{padding:1.25rem 1.5rem 1.5rem}.client-section{padding:1rem 1.25rem;background:var(--muted);border-radius:var(--radius-md);margin-bottom:1.25rem}.client-label{font-size:.6875rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--muted-foreground);display:block;margin-bottom:.375rem}.client-name{font-size:.9375rem;font-weight:600;color:var(--foreground);font-family:JetBrains Mono,monospace;letter-spacing:-.02em;margin-bottom:.5rem}.client-meta{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem}.client-meta a,.client-contact{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--muted-foreground);font-weight:500;transition:color .15s ease}.client-meta a{text-decoration:none}.client-meta a:hover{color:var(--foreground)}.client-meta-icon{width:14px;height:14px;flex-shrink:0;opacity:.85}.list{display:flex;flex-direction:column;gap:.25rem}.list-label{font-size:.6875rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--muted-foreground);margin-bottom:.75rem;padding:0 .125rem}.item{list-style:none;border-radius:var(--radius-md)}.item-content{min-width:0}.badge{display:inline-flex;align-items:center;border-radius:9999px;border:1px solid var(--border);background:var(--secondary);color:var(--secondary-foreground);padding:.125rem .5rem;font-size:.6875rem;font-weight:500;font-family:JetBrains Mono,monospace;letter-spacing:.02em}.item .badge{text-decoration:none;color:inherit}.item:hover .badge{background:var(--border);color:var(--foreground)}.item-link{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;text-decoration:none;color:inherit;border-radius:var(--radius-md);border:1px solid transparent;background:var(--background);transition:background .15s ease,border-color .15s ease}.item-link:hover{background:var(--accent)}.item-link:focus-visible{outline:none;border-color:var(--border)}.meta{color:var(--muted-foreground);font-size:.8125rem;margin-top:.25rem;line-height:1.4}.item-resume .item-link{background:transparent;border:1px solid var(--foreground)}.item-resume .item-link:hover{background:transparent}.item-resume .badge-resume{background:transparent;color:var(--foreground);border:1px solid var(--foreground)}.item-resume .item-link:hover .badge-resume{background:transparent;color:var(--foreground);border-color:var(--foreground)}.item-resume .meta{color:var(--foreground);font-weight:500}.item-resume .item-action{font-weight:600;color:var(--foreground)}.item-resume .item-link:hover .item-action{color:var(--foreground)}.item-action{flex-shrink:0;font-size:.8125rem;font-weight:500;display:inline-flex;align-items:center;gap:.25rem}.item-action svg{width:14px;height:14px;opacity:.7}.site-footer{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border);font-size:.8125rem;color:var(--muted-foreground)}.site-footer-inner{max-width:42rem;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem 1.25rem}.site-footer span{white-space:nowrap}.site-footer a{color:var(--muted-foreground);text-decoration:none;transition:color .15s ease}.site-footer a:hover{color:var(--foreground)}.site-footer-sep{width:1px;height:.875rem;background:var(--border);flex-shrink:0}#app-content{transition:filter .2s ease}#app-content.content-blurred{filter:blur(4px);pointer-events:none;user-select:none}#password-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#0003;z-index:10}#password-overlay[hidden]{display:none}.password-card{background:var(--background);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 4px 12px #0000001a;padding:1.5rem 1.75rem;min-width:280px}.password-card h2{font-size:1.125rem;font-weight:600;color:var(--foreground);margin-bottom:.5rem}.password-card p{font-size:.875rem;color:var(--muted-foreground);margin-bottom:1rem}.password-input-wrapper{position:relative;margin-bottom:.75rem}.password-card input{width:100%;padding:.5rem 2.5rem .5rem .75rem;font-size:.9375rem;border:1px solid var(--border);border-radius:var(--radius-md);font-family:inherit}.password-card input:focus{outline:none;border-color:var(--primary)}.password-toggle{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;color:var(--muted-foreground);transition:color .15s ease}.password-toggle:hover{color:var(--foreground)}.password-toggle svg{width:18px;height:18px}.password-card button[type=submit]{width:100%;padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:var(--primary-foreground);background:var(--primary);border:none;border-radius:var(--radius-md);cursor:pointer;font-family:inherit}.password-card button:hover{opacity:.9}.password-card button[type=submit]{width:100%}.password-error{font-size:.8125rem;color:#b91c1c;margin-top:.5rem;display:none}.password-error.visible{display:block}
