:root{--color-bg-dark:#191a18;--color-bg-card:#203419;--color-bg-input:#1c2517;--color-bg-overlay:#191a18d9;--color-text-primary:#fafaf7;--color-text-secondary:#a8a69e;--color-text-tertiary:#6c6a63;--color-text-inverse:#191a18;--color-border-primary:#2e3a26;--color-border-secondary:#3c6e35;--color-border-subtle:#242d1e;--color-field-border:#3c6e35;--color-field-border-focus:#629a41;--color-accent-primary:#efa026;--color-accent-primary-light:#f5b95a;--color-accent-primary-dim:#efa02626;--color-accent-primary-border:#efa0264d;--color-accent-contrast:#fafaf7;--color-accent-contrast-dim:#fafaf71f;--color-accent-error:#c0402a;--color-accent-error-dim:#c0402a26;--color-accent-warning:#a8792b;--color-accent-warning-dim:#a8792b26;--color-accent-success:#629a41;--color-accent-success-dim:#629a4126;--color-trip-business:#efa026;--color-trip-business-dim:#efa02626;--color-trip-business-border:var(--color-accent-primary-border);--color-trip-personal:#629a41;--color-trip-personal-dim:#629a4126;--color-trip-personal-border:#629a414d;--color-trip-medical:#fafaf7;--color-trip-medical-dim:#fafaf71f;--color-trip-medical-border:#fafaf74d;--color-trip-other:#6c6a63;--color-trip-other-dim:#6c6a632e;--color-trip-other-border:#6c6a6359;--color-trip-untagged:#4a4842;--color-trip-untagged-dim:#4a484233;--color-trip-untagged-border:#4a484259;--color-location-home:var(--color-trip-personal);--color-location-home-dim:var(--color-trip-personal-dim);--color-location-home-border:var(--color-trip-personal-border);--color-location-work:var(--color-trip-medical);--color-location-work-dim:var(--color-trip-medical-dim);--color-location-work-border:var(--color-trip-medical-border);--color-location-business:var(--color-accent-primary);--color-location-business-dim:var(--color-accent-primary-dim);--color-location-business-border:var(--color-accent-primary-border);--color-location-other:var(--color-trip-other);--color-location-other-dim:var(--color-trip-other-dim);--color-location-other-border:var(--color-trip-other-border);--color-deduction-positive:#629a41;--color-deduction-negative:#c0402a;--color-map-route-line:#efa026;--color-map-route-line-active:#f5b95a;--color-map-start-pin:#629a41;--color-map-end-pin:#efa026;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-xxl:3rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-full:999px;--control-height:52px;--control-height-min:44px}@font-face{font-family:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/bebasneue-regular.woff2)format("woff2")}@font-face{font-family:Figtree;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/figtree-regular.woff2)format("woff2")}@font-face{font-family:Figtree;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/figtree-medium.woff2)format("woff2")}@font-face{font-family:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/figtree-bold.woff2)format("woff2")}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--color-bg-dark);min-height:100vh;color:var(--color-text-primary);font-family:Figtree,system-ui,sans-serif;font-weight:400;line-height:1.5}h1,h2,h3,h4,h5,h6{letter-spacing:.01em;font-family:Bebas Neue,Figtree,system-ui,sans-serif;font-weight:400;line-height:1.15}h1{font-size:2.75rem}h2{font-size:2.25rem}h3{font-size:1.75rem}h4{font-size:1.375rem}h5{font-size:1.125rem}h6{font-size:1rem}a{color:inherit}button,input,textarea,select{font:inherit;color:inherit}img,svg{max-width:100%;display:block}.btn{justify-content:center;align-items:center;gap:var(--space-sm);min-height:var(--control-height);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-sm);text-align:center;cursor:pointer;background:0 0;border:1px solid #0000;font-family:Figtree,system-ui,sans-serif;font-size:1rem;font-weight:700;line-height:1;text-decoration:none;transition:background-color .12s,border-color .12s;display:inline-flex}.btn:focus-visible{outline:2px solid var(--color-field-border-focus);outline-offset:2px}.btn--primary{background:var(--color-accent-primary);color:var(--color-text-inverse)}.btn--primary:hover:not(:disabled){background:var(--color-accent-primary-light)}.btn--secondary{border-color:var(--color-border-secondary);color:var(--color-text-primary);background:0 0}.btn--secondary:hover:not(:disabled){border-color:var(--color-field-border-focus)}.btn--text{min-height:var(--control-height-min);padding:var(--space-sm);color:var(--color-accent-primary);background:0 0;font-size:.9375rem;font-weight:500}.btn--text:hover:not(:disabled){color:var(--color-accent-primary-light)}.btn:disabled{cursor:not-allowed;background:var(--color-bg-card);color:var(--color-text-tertiary);border-color:#0000}.btn--text:disabled{color:var(--color-text-tertiary);background:0 0}.btn--block{width:100%;display:flex}.field{gap:var(--space-xs);margin-bottom:var(--space-md);flex-direction:column;display:flex}.field__label{color:var(--color-text-secondary);font-size:.875rem;font-weight:500}.field__description,.field__helper{color:var(--color-text-tertiary);font-size:.8125rem}.field__input{width:100%;min-height:var(--control-height);padding:var(--space-md);background:var(--color-bg-input);border:1px solid var(--color-field-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:1rem}.field__input::placeholder{color:var(--color-text-tertiary)}.field__input:focus{border-color:var(--color-field-border-focus);outline:none}.field__input[aria-invalid=true],.field__input[aria-invalid=true]:focus{border-color:var(--color-accent-error)}.field__input:disabled{border-color:var(--color-border-subtle);color:var(--color-text-tertiary)}.field__error{color:var(--color-accent-error);font-size:.75rem}.form-error{padding:var(--space-md);margin-bottom:var(--space-md);background:var(--color-accent-error-dim);border:1px solid var(--color-accent-error);border-radius:var(--radius-sm);color:var(--color-accent-error);font-size:.875rem}.empty-state{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-xxl) var(--space-xl);text-align:center;flex-direction:column;display:flex}.empty-state__title{color:var(--color-text-primary);font-family:Figtree,system-ui,sans-serif;font-size:1.125rem;font-weight:700}.empty-state__message{color:var(--color-text-secondary);max-width:40ch;font-size:.875rem}.empty-state__action{margin-top:var(--space-md)}.full-page-spinner{min-height:60vh;color:var(--color-text-tertiary);justify-content:center;align-items:center;font-size:.875rem;display:flex}.shell{min-height:100vh}.shell__bar{align-items:center;gap:var(--space-lg);padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-border-primary);background:var(--color-bg-dark);z-index:10;flex-wrap:wrap;display:flex;position:sticky;top:0}.shell__brand{letter-spacing:.06em;color:var(--color-accent-primary);font-family:Bebas Neue,Figtree,system-ui,sans-serif;font-size:1.75rem;text-decoration:none}.shell__nav{gap:var(--space-md);display:flex}.shell__nav a{color:var(--color-text-secondary);padding:var(--space-sm) 0;text-decoration:none}.shell__nav a:hover{color:var(--color-text-primary)}.shell__account{align-items:center;gap:var(--space-sm);margin-left:auto;display:flex}.shell__email{color:var(--color-text-tertiary);font-size:.875rem}.shell__main{max-width:60rem;padding:var(--space-xl) var(--space-lg) var(--space-xxl);margin:0 auto}.auth-page{min-height:100vh;padding:var(--space-lg);justify-content:center;align-items:center;display:flex}.auth-card{width:100%;max-width:24rem}.auth-title{letter-spacing:.06em;color:var(--color-accent-primary);text-align:center;font-family:Bebas Neue,Figtree,system-ui,sans-serif;font-size:3rem}.auth-tagline{text-align:center;color:var(--color-text-secondary);margin-bottom:var(--space-xl);font-size:.875rem}.auth-footer{margin-top:var(--space-lg);text-align:center;color:var(--color-text-secondary);font-size:.875rem}.auth-footer a{color:var(--color-accent-primary)}.page-header{justify-content:space-between;align-items:flex-end;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.breadcrumb{color:var(--color-text-tertiary);margin-bottom:var(--space-xs);font-size:.8125rem}.breadcrumb a{color:var(--color-text-secondary)}.card{background:var(--color-bg-card);border-radius:var(--radius-md);padding:var(--space-lg);margin-bottom:var(--space-lg)}.card__title{margin-bottom:var(--space-md);font-family:Figtree,system-ui,sans-serif;font-size:1rem;font-weight:700}.note{color:var(--color-text-tertiary);margin-top:var(--space-md);font-size:.8125rem}.note--warn{color:var(--color-accent-warning)}.form-note{color:var(--color-accent-success);margin-bottom:var(--space-md);font-size:.875rem}.muted{color:var(--color-text-tertiary)}.stat-row{gap:var(--space-xl);flex-wrap:wrap;display:flex}.stat-row dt{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-tertiary);font-size:.75rem}.stat-row dd{color:var(--color-text-primary);font-family:Bebas Neue,Figtree,system-ui,sans-serif;font-size:2rem;line-height:1.1}.org-list{gap:var(--space-sm);flex-direction:column;list-style:none;display:flex}.org-list__item{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--color-bg-card);border-radius:var(--radius-md);border:1px solid #0000;text-decoration:none;display:flex}.org-list__item:hover{border-color:var(--color-border-secondary)}.org-list__name{font-weight:500}.org-list__meta{color:var(--color-text-tertiary);font-size:.875rem}.table{border-collapse:collapse;width:100%;font-size:.9375rem}.table th{text-align:left;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-tertiary);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border-primary);font-size:.75rem;font-weight:500}.table td{padding:var(--space-md) var(--space-sm) var(--space-md) 0;border-bottom:1px solid var(--color-border-subtle);vertical-align:middle}.table__actions{text-align:right}.badge{padding:.125rem var(--space-sm);border-radius:var(--radius-full);text-transform:capitalize;border:1px solid;font-size:.75rem;font-weight:500;display:inline-block}.badge--active,.badge--personal{background:var(--color-trip-personal-dim);border-color:var(--color-trip-personal-border);color:var(--color-trip-personal)}.badge--invited,.badge--business{background:var(--color-trip-business-dim);border-color:var(--color-trip-business-border);color:var(--color-trip-business)}.badge--medical{background:var(--color-trip-medical-dim);border-color:var(--color-trip-medical-border);color:var(--color-trip-medical)}.badge--removed,.badge--commuting,.badge--other{background:var(--color-trip-other-dim);border-color:var(--color-trip-other-border);color:var(--color-trip-other)}.badge--untagged{background:var(--color-trip-untagged-dim);border-color:var(--color-trip-untagged-border);color:var(--color-text-secondary)}.period-row{gap:var(--space-sm);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.chip{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-full);border:1px solid var(--color-border-primary);background:var(--color-bg-card);color:var(--color-text-secondary);cursor:pointer;flex:none;font-size:.875rem}.chip--on{border-color:var(--color-accent-primary-border);background:var(--color-accent-primary-dim);color:var(--color-accent-primary)}.invite-result{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-border-primary)}.invite-link{-webkit-user-select:all;user-select:all;overflow-wrap:anywhere;padding:var(--space-md);margin:var(--space-md) 0;background:var(--color-bg-input);border:1px solid var(--color-field-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem;display:block}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}
