body{background:#030712;color:#e5e7eb}*{box-sizing:border-box;margin:0;padding:0}:root{--las-navy:#e5e7eb;--las-blue:#93c5fd;--las-sky:#94a3b8;--las-gold:#d4a85f;--las-gold-soft:#2a241b;--las-sand:#111827;--las-asphalt:#e2e8f0;--las-runway:#1f2937;--las-terminal:#111827;--las-muted:#94a3b8;--las-border:#94a3b847;--las-shadow:0 16px 32px #02061773;--las-panel:#0f172ad9}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(180deg,#020617,#0f172a);color:#e2e8f0;color:var(--las-asphalt);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{display:flex;flex-direction:column;min-height:100vh;text-align:center}.app-shell{isolation:isolate;position:relative;transition:background .28s ease}.app-shell:before{content:"";inset:0;pointer-events:none;position:fixed;z-index:0}.app-shell>*{position:relative;z-index:1}.app-shell--portfolio,.app-shell--portfolio:before{background:#0000}.app-shell--parking{background:radial-gradient(circle at 12% 10%,#48b7d833,#0000 26rem),linear-gradient(180deg,#0c1724,#12263f 45%,#0b1624)}.app-shell--parking:before{background:repeating-linear-gradient(90deg,#0000,#0000 54px,#ffffff0f 0,#ffffff0f 56px);opacity:.45}.app-shell--parking footer{background:#030c18f2;border-top-color:var(--las-sky)}.container{margin:0 auto;max-width:1200px;padding:20px;width:100%}header{background:linear-gradient(135deg,#071a2ff5,#0f3557f0),repeating-linear-gradient(90deg,#0000,#0000 36px,#f6b73c29 0,#f6b73c29 40px);border-bottom:4px solid #153b6d;box-shadow:0 16px 36px #071a2f3d;color:#fff;padding:34px 20px}header h1{letter-spacing:-.04em}main{flex:1 1;padding:40px 20px}footer{background-color:#0b1220;border-top:3px solid #153b6d;color:#fff;padding:13px 20px;text-align:center}footer p{color:#ffffffc7;margin:0}.app-footer-links{align-items:center;display:flex;gap:16px;justify-content:center}.app-footer-link{align-items:center;color:#e2e8f0;display:inline-flex;font-weight:700;gap:8px;text-decoration:none}.app-footer-link svg{background-color:#ffffff24;border-radius:4px;padding:6px}.app-footer-link:focus-visible,.app-footer-link:hover{color:var(--las-gold);outline:none}.infrastructure-compact-shell{align-items:stretch;box-sizing:border-box;display:flex;height:calc(100vh - 12px);max-height:100vh;overflow:hidden;padding:10px 12px;position:relative}.infrastructure-top-nav{z-index:2}.infrastructure-header-divider{background:#153b6d;height:1px;left:12px;position:absolute;right:12px;top:64px}.infrastructure-compact-grid{grid-gap:0;align-items:stretch;display:grid;gap:0;grid-template-columns:repeat(5,minmax(170px,1fr));padding-top:64px;width:100%}.infrastructure-compact-panel{-ms-overflow-style:auto;background:#0000;border-left:1px solid #153b6d;border-radius:0;box-shadow:none;min-height:100%;overflow-y:auto;padding:0 10px 0 12px;scrollbar-color:#94a3b873 #0000;scrollbar-width:thin}.infrastructure-compact-panel::-webkit-scrollbar{background:#0000;height:8px;width:8px}.infrastructure-compact-panel::-webkit-scrollbar-track{background:#0000}.infrastructure-compact-panel::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#94a3b814,#64748b1f);border:1px solid #ffffff26;border-radius:999px;opacity:.45}.infrastructure-compact-panel:active::-webkit-scrollbar-thumb,.infrastructure-compact-panel:focus-within::-webkit-scrollbar-thumb,.infrastructure-compact-panel:hover::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#94a3b85c,#64748b7a);opacity:.9}.infrastructure-compact-panel:first-child{border-left:none;padding-left:0}.infrastructure-home-toolbar+.infrastructure-compact-shell .infrastructure-compact-grid .infrastructure-compact-panel{border-left-width:1px}.infrastructure-compact-panel h3{color:#64748b;color:var(--las-muted,#64748b);font-size:.72rem;font-weight:800;letter-spacing:.12em;margin:10px 0 8px;text-transform:uppercase}.infrastructure-column-stack{grid-gap:12px;display:grid;gap:12px;padding-bottom:12px}.infrastructure-column-group{grid-gap:6px;display:grid;gap:6px;padding-top:4px}.infrastructure-column-label{color:#64748b;color:var(--las-muted,#64748b);font-size:.62rem;font-weight:800;letter-spacing:.08em;margin-bottom:2px;text-transform:uppercase}.infrastructure-mini-stat-row{align-items:baseline;border-bottom:1px solid #0f172a0f;display:flex;font-size:.68rem;gap:8px;justify-content:space-between;padding-bottom:4px}.infrastructure-mini-stat-row span{color:#64748b;color:var(--las-muted,#64748b)}.infrastructure-mini-stat-row strong{align-items:center;color:#0f172a;color:var(--las-navy,#0f172a);display:inline-flex;flex-shrink:0;font-size:.7rem;justify-content:flex-end;text-align:right}.infrastructure-entry{grid-gap:3px;border-bottom:1px solid #0f172a0d;display:grid;gap:3px;padding:6px 0}.infrastructure-entry:last-child{border-bottom:none}.infrastructure-entry.empty{color:#64748b;color:var(--las-muted,#64748b);font-size:.68rem}.infrastructure-entry-header{align-items:baseline;display:flex;font-size:.68rem;gap:8px;justify-content:space-between}.infrastructure-entry-header span{align-items:center;color:#0f172a;color:var(--las-navy,#0f172a);display:inline-flex;font-weight:700;gap:6px;max-width:62%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.infrastructure-entry-header strong{color:#64748b;color:var(--las-muted,#64748b);font-size:.62rem;letter-spacing:.04em;text-align:right;text-transform:uppercase}.infrastructure-status-badge{align-items:center;border:1px solid #0000;border-radius:999px;display:inline-flex;font-size:.56rem;font-weight:800;justify-content:center;letter-spacing:.04em;line-height:1.2;max-width:none;min-width:-webkit-max-content;min-width:max-content;overflow:visible;padding:2px 7px;text-transform:uppercase;white-space:nowrap;width:-webkit-max-content;width:max-content}.status-success{background:#22c55e26;border-color:#22c55e59;color:#0f5132}.status-warning{background:#facc152e;border-color:#facc156b;color:#7a4d00}.status-orange{background:#f9731626;border-color:#f973166b;color:#9a4d00}.status-danger{background:#ef444426;border-color:#ef444461;color:#7f1d1d}.infrastructure-badge-row{display:flex;flex-wrap:wrap;gap:6px}.infrastructure-entry small,.infrastructure-entry-meta-row{color:#64748b;color:var(--las-muted,#64748b);font-size:.62rem;line-height:1.35}.infrastructure-entry-meta-row{align-items:center;display:flex;word-break:break-word}@media (max-width:1180px){.infrastructure-compact-grid{grid-template-columns:repeat(2,minmax(180px,1fr));overflow-y:auto}.infrastructure-compact-shell{height:auto;max-height:none;overflow:auto}}@media (max-width:720px){.infrastructure-compact-grid{grid-template-columns:1fr}.infrastructure-compact-panel{border-left:none;border-top:1px solid #0f172a1f;padding-left:0}}.service-header{background:linear-gradient(180deg,#111827,#1f2937);border-bottom:4px solid #b38a4db3;box-shadow:0 16px 36px #0f172a1f;color:#fff;margin-bottom:30px;padding:32px 20px 46px;position:relative;text-align:center}.app-shell--parking .service-header{border:1px solid #48b7d85c;border-bottom:4px solid var(--las-gold);border-radius:22px;box-shadow:0 26px 48px #0209136b,inset 0 0 0 1px #ffffff0d;margin:18px auto 30px;width:min(1400px,calc(100% - 32px))}.service-header h1{font-size:2.2em;font-weight:800;letter-spacing:-.04em;margin:0}.service-header-nav{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin:0 auto 24px;width:min(1200px,100%)}.service-context-pill{align-items:center;background:#f6b73c24;border:1px solid #f6b73c6b;border-radius:999px;color:#fffffff2;display:inline-flex;font-size:.78rem;font-weight:800;gap:8px;letter-spacing:.08em;padding:8px 14px;text-transform:uppercase}.service-hosted-note{background:#ffffff14;border:1px dashed #ffffff42;border-radius:12px;color:#ffffffe0;font-size:.9rem;line-height:1.6;margin:18px auto 0;padding:12px 14px;width:min(760px,100%)}.service-eyebrow{color:var(--las-gold);font-size:.82rem;font-weight:800;letter-spacing:.18em;margin:0 0 10px;text-transform:uppercase}.service-subtitle{color:#ffffffd1;font-size:1.05rem;line-height:1.7;margin:16px auto 0;width:min(760px,100%)}.back-link{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#ffffff29;border:1px solid #ffffff3d;border-radius:999px;color:#fff;display:inline-flex;font-weight:700;gap:8px;padding:8px 16px;text-decoration:none;transition:all .3s ease}.back-link:hover{background-color:#f6b73c38;transform:translateX(-5px)}.header-action-link{background:#ffffff14;border:1px solid #ffffff38;border-radius:999px;color:#fff;font-weight:700;padding:8px 16px;text-decoration:none;transition:all .3s ease}.header-action-link:hover{background:#48b7d82e;border-color:#48b7d866}.service-container{margin:0 auto 40px;max-width:1400px;padding:0 20px}.app-shell--parking .service-container{padding:0;width:min(1400px,calc(100% - 32px))}.service-details{background-color:#fffffff0;border:1px solid var(--las-border);border-radius:18px;box-shadow:var(--las-shadow);margin-top:25px;padding:25px}.app-shell--parking .service-details{background:#f8fbfff7;border:1px solid #48b7d847;box-shadow:0 22px 44px #02091347,0 0 0 1px #48b7d81f}.app-shell--parking .service-details:before{background:linear-gradient(90deg,var(--las-gold),var(--las-sky));border-radius:16px 16px 0 0;content:"";display:block;height:8px;margin:-25px -25px 20px}.service-details h3{border-bottom:3px solid var(--las-gold);color:var(--las-navy);font-size:1.35em;margin-top:0;padding-bottom:10px}.service-details p{color:#475569;font-size:1em;line-height:1.6;margin-bottom:0}.infrastructure-summary-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:20px}.infrastructure-section,.infrastructure-summary-card{background:#f8fafce6;border:1px solid var(--las-border);border-radius:16px;padding:18px 20px}.infrastructure-section h3,.infrastructure-summary-card h3{color:var(--las-navy);margin:10px 0 8px}.infrastructure-note,.infrastructure-summary-card p{color:#475569;line-height:1.6;margin:0}.infrastructure-section-list{grid-gap:18px;display:grid;gap:18px;margin-top:20px}.infrastructure-metric-list{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:12px}.infrastructure-metric{background:#ffffffe6;border:1px solid var(--las-border);border-radius:12px;padding:12px 14px}.infrastructure-metric-label{color:var(--las-muted);display:block;font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.infrastructure-metric-value{color:var(--las-navy);display:block;font-size:1.08rem;font-weight:700;margin-top:6px}.infrastructure-note{margin-top:14px}.service-code-block{background:#071a2f0a;border:1px solid var(--las-border);border-radius:12px;color:var(--las-asphalt);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.9rem;line-height:1.6;margin-bottom:0;margin-top:14px;overflow-x:auto;padding:14px 16px;text-align:left;white-space:pre}.database-snapshot-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:20px}.database-query-card,.database-snapshot-grid>div{background:#f8fbfff5;border:1px solid var(--las-border);border-radius:16px;box-shadow:0 10px 24px #071a2f14}.database-snapshot-grid>div{padding:16px}.database-query-time,.database-snapshot-grid .service-card-kicker{color:var(--las-muted);display:block;font-size:.72rem;font-weight:800;letter-spacing:.14em;margin-bottom:8px;text-transform:uppercase}.database-snapshot-grid p{color:var(--las-asphalt);font-weight:700;margin:0}.database-query-list{grid-gap:14px;display:grid;gap:14px;margin-top:20px}.database-query-card{padding:16px}.database-query-card pre{color:var(--las-asphalt);font-family:inherit;line-height:1.6;margin:0;white-space:pre-wrap;word-break:break-word}.database-query-card .database-query-time{margin-bottom:10px}.service-infrastructure-panel{margin-top:0}.service-infrastructure-panel h2{color:var(--las-navy);font-size:clamp(1.75rem,3vw,2.25rem);margin:0}.service-infrastructure-heading{display:block;text-align:center}.service-infrastructure-heading>div{margin:0 auto;max-width:760px;text-align:center}.service-infrastructure-heading .section-copy,.service-infrastructure-heading h2{text-align:center}.service-infrastructure-heading .section-copy{margin-left:auto;margin-right:auto}.service-infrastructure-grid{margin-top:28px}.analytics-controls-grid{align-items:flex-end;display:flex;flex-wrap:wrap;gap:14px;margin-bottom:18px}.analytics-query-controls{grid-gap:14px;display:grid;gap:14px;margin-bottom:18px;max-width:1180px}.analytics-sort-controls{margin-bottom:0}.analytics-query-actions{align-items:flex-end;display:flex}.analytics-control-group{grid-gap:6px;display:grid;gap:6px}.analytics-control-group label{color:var(--las-asphalt);font-weight:700}.analytics-filter-select{background:#fff;border:1px solid var(--las-border);border-radius:10px;color:var(--las-asphalt);font:inherit;min-width:100px;padding:8px 12px}.analytics-filter-stack{grid-gap:12px;display:grid;gap:12px;margin-bottom:18px;width:100%}.analytics-filter-stack-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.analytics-filter-builder-note,.analytics-filter-empty-state{color:var(--las-muted);font-size:.92rem;margin:0}.analytics-filter-list{grid-gap:12px;display:grid;gap:12px}.analytics-filter-row{grid-gap:12px;align-items:end;background:#fff;display:grid;gap:12px;grid-template-columns:minmax(150px,.9fr) minmax(150px,.9fr) minmax(180px,1.2fr) auto;padding:2px}.analytics-filter-row-header{background:#0000;color:var(--las-muted);font-size:.78rem;font-weight:800;letter-spacing:.08em;padding:0 12px;text-transform:uppercase}.analytics-filter-row-header>div{padding-bottom:2px}.analytics-filter-row .analytics-filter-select{min-width:0;width:100%}.analytics-filter-value-group{min-width:0}.analytics-filter-input{background:#fff;border-radius:10px;padding:8px 12px;width:100%}.analytics-filter-input,.analytics-filter-remove-button{border:1px solid var(--las-border);color:var(--las-asphalt);font:inherit}.analytics-filter-remove-button{background:#ffffffe6;border-radius:10px;cursor:pointer;font-weight:700;padding:8px 14px}.analytics-filter-remove-button:hover{border-color:#9f123959;color:#9f1239}.analytics-column-toggles{display:flex;flex-wrap:wrap;gap:10px 16px;margin-bottom:18px}.analytics-column-toggle{align-items:center;color:var(--las-asphalt);display:inline-flex;font-size:.9rem;gap:8px}.analytics-summary-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.analytics-summary-grid>div{background:#f8fbfff5;border:1px solid var(--las-border);border-radius:14px;padding:12px}.analytics-summary-grid p{color:var(--las-asphalt);font-weight:700;margin:0}.analytics-pagination-controls{align-items:stretch;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.analytics-pagination-summary{background:#f8fbfff5;border:1px solid var(--las-border);border-radius:14px;min-width:140px;padding:12px}.analytics-pagination-summary p{color:var(--las-asphalt);font-weight:700;margin:0}.analytics-pagination-buttons{align-items:center;display:inline-flex;gap:10px}.analytics-page-button{cursor:pointer;padding:8px 14px}.analytics-page-button,.analytics-page-input{background:#fff;border:1px solid var(--las-border);border-radius:10px;color:var(--las-asphalt);font:inherit;font-weight:700}.analytics-page-input{max-width:100px;min-width:50px;padding:8px 10px;text-align:center}.analytics-page-button:disabled,.analytics-page-input:disabled{cursor:not-allowed;opacity:.55}.analytics-infrastructure-container{max-width:none;width:100%}.analytics-infrastructure-section{width:100%}.analytics-table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto;width:100%}.analytics-table{border-collapse:collapse;margin-top:8px;min-width:1450px;width:-webkit-max-content;width:max-content}.analytics-table td,.analytics-table th{border-bottom:1px solid var(--las-border);color:var(--las-asphalt);font-size:.92rem;padding:12px 10px;text-align:left;vertical-align:top}.analytics-table th{color:var(--las-navy);font-size:.8rem;font-weight:800;letter-spacing:.06em}.analytics-th-button{background:#0000;border:0;color:inherit;cursor:pointer;font:inherit;font-weight:inherit;letter-spacing:inherit;padding:0;text-transform:uppercase}.analytics-th-button.is-active{color:var(--las-sky)}.analytics-event-type-badge{align-items:center;background:#48b7d829;border:1px solid #48b7d866;border-radius:999px;color:var(--las-navy);display:inline-flex;font-size:.76rem;font-weight:800;letter-spacing:.06em;padding:4px 10px}.analytics-truncate-cell{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-payload-cell{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.8rem;min-width:420px;white-space:nowrap;word-break:normal}.analytics-nowrap-cell{white-space:nowrap}.build-infrastructure-section{margin-top:0}.build-error-message{color:#9f1239;font-weight:700}.build-pipeline-grid{grid-gap:16px;display:grid;gap:16px;margin-top:16px}.build-pipeline-card{background:#f8fbfffa;border:1px solid var(--las-border);border-radius:16px;box-shadow:0 10px 24px #071a2f14;overflow:hidden}.build-pipeline-card-header{align-items:center;border-bottom:1px solid var(--las-border);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:14px 16px}.build-pipeline-card-header h4{color:var(--las-navy);margin:0}.build-pipeline-card-header p{color:var(--las-muted);font-size:.84rem;margin:4px 0 0}.build-recent-count{align-items:center;background:#48b7d81f;border:1px solid #48b7d85c;border-radius:999px;color:var(--las-navy);display:inline-flex;font-size:.76rem;font-weight:800;letter-spacing:.05em;padding:6px 12px;text-transform:uppercase}.build-table-wrapper{overflow-x:auto}.build-table{border-collapse:collapse;width:100%}.build-table td,.build-table th{border-bottom:1px solid var(--las-border);color:var(--las-asphalt);font-size:.9rem;padding:10px 12px;text-align:left}.build-table th{background:#0f35570f;color:var(--las-navy);font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.build-table tbody tr:last-child td{border-bottom:none}.build-state-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.72rem;font-weight:800;letter-spacing:.05em;padding:4px 10px;text-transform:uppercase}.build-state-badge--success{background:#16a34a24;border:1px solid #16a34a73;color:#14532d}.build-state-badge--failure{background:#e11d4824;border:1px solid #e11d4873;color:#9f1239}.build-state-badge--blocked,.build-state-badge--in-progress,.build-state-badge--unknown{background:#f9731624;border:1px solid #f9731673;color:#7c2d12}.deployment-state-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.72rem;font-weight:800;letter-spacing:.05em;padding:4px 10px;text-transform:uppercase}.deployment-state-badge--success{background:#16a34a24;border:1px solid #16a34a73;color:#14532d}.deployment-state-badge--failure{background:#e11d4824;border:1px solid #e11d4873;color:#9f1239}.deployment-state-badge--blocked{background:#f59e0b24;border:1px solid #f59e0b73;color:#92400e}.deployment-state-badge--in-progress{background:#0ea5e924;border:1px solid #0ea5e973;color:#075985}.deployment-state-badge--unknown{background:#64748b24;border:1px solid #64748b73;color:#334155}@media (max-width:768px){.app-shell--parking .service-container,.app-shell--parking .service-header{width:calc(100% - 18px)}.app-shell--parking .service-details:before{margin-left:-15px;margin-right:-15px;margin-top:-15px}.service-header{padding-top:24px}.service-header h1{font-size:1.6em}.service-header-nav{justify-content:center;margin-bottom:18px}.service-context-pill{justify-content:center;width:100%}.service-container{padding:0 10px}.service-details{padding:15px}.service-subtitle{font-size:.98rem}.analytics-summary-grid,.database-snapshot-grid{grid-template-columns:1fr}.analytics-query-controls,.analytics-sort-controls{gap:12px}.analytics-query-actions,.analytics-query-actions .analytics-page-button{width:100%}.analytics-filter-row{grid-template-columns:1fr}.analytics-pagination-controls{flex-direction:column}.analytics-filter-input,.analytics-filter-remove-button,.analytics-filter-select,.analytics-page-button,.analytics-page-input,.analytics-pagination-buttons{width:100%}.analytics-table{min-width:1100px}.build-pipeline-card-header{align-items:flex-start}}.parking-container{padding-top:10px}.parking-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(3,1fr);margin-top:18px}.parking-page-path{color:#ffffffeb;font-size:.82rem;font-weight:700;letter-spacing:.08em;margin:0 0 8px;text-shadow:0 1px 2px #0209138c;text-transform:uppercase}.parking-page-level{margin:0 0 12px}.parking-level-pill{background:#0f172a80;border:1px solid #ffffff94;border-radius:999px;color:#fff;display:inline-block;font-size:.78rem;font-weight:800;letter-spacing:.06em;padding:6px 12px;text-shadow:0 1px 2px #02091399;text-transform:uppercase}.parking-level-pill--lots{background:#0ea5e973;border-color:#bae6fde6}.parking-level-pill--lot{background:#f59e0b6b;border-color:#fef08ae6}.parking-level-pill--floor{background:#ec489966;border-color:#fbcfe8e6}.service-header.parking-page--lots{border-bottom-color:#38bdf8}.service-header.parking-page--lot-details{border-bottom-color:#f59e0b}.service-header.parking-page--floor-details{border-bottom-color:#ec4899}.service-details[class*=parking-content--]{overflow:hidden;position:relative}.service-details[class*=parking-content--]:after{border-radius:18px 0 0 18px;bottom:0;content:"";left:0;position:absolute;top:0;width:8px}.service-details.parking-content--lots{background:linear-gradient(180deg,#f0f9ffeb,#fffffffa);border-color:#38bdf84d}.service-details.parking-content--lots:after{background:linear-gradient(180deg,#38bdf8,#0ea5e9)}.service-details.parking-content--lot{background:linear-gradient(180deg,#fffbebf0,#fffffffa);border-color:#f59e0b52}.service-details.parking-content--lot:after{background:linear-gradient(180deg,#f59e0b,#f97316)}.service-details.parking-content--floor{background:linear-gradient(180deg,#fdf2f8f0,#fffffffa);border-color:#ec48994d}.service-details.parking-content--floor:after{background:linear-gradient(180deg,#ec4899,#db2777)}.parking-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 1px 3px #0000000a;padding:14px}.app-shell--parking .floor-item,.app-shell--parking .floor-section,.app-shell--parking .parking-card{border-color:#48b7d84d;border-radius:14px;border-width:1px;box-shadow:0 14px 28px #071a2f1a}.lot-link{color:inherit;display:block;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease}.lot-link:hover{box-shadow:0 6px 18px #0f172a14;transform:translateY(-4px)}.parking-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.parking-card-header h4{color:#0f172a;font-size:1.05em;font-weight:800;margin:0}.app-shell--parking .floor-section-name,.app-shell--parking .parking-card-header h4{color:#0b1220;text-shadow:none}.parking-status{background:#f0f4ff;border-radius:14px;color:#334155;font-size:.85em;font-weight:600;padding:6px 10px}.app-shell--parking .parking-status{background:#48b7d829;border:1px solid #48b7d847}.parking-body p{color:#333;margin:0}.parking-stat-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.parking-stat-grid--two-col{grid-template-columns:repeat(3,minmax(0,1fr))}.parking-stat{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;flex-direction:column;gap:2px;padding:8px 10px}.parking-stat-label{color:#64748b;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.parking-stat-value{color:#0f172a;font-size:1rem}.progress{background:#f1f5f9;border-radius:999px;height:14px;margin:8px 0 2px;overflow:hidden;position:relative}.progress-bar{background:linear-gradient(90deg,#4f46e5,#06b6d4);border-radius:999px 0 0 999px;height:100%;transition:width .3s ease}.app-shell--parking .progress-bar{background:linear-gradient(90deg,var(--las-gold),var(--las-sky))}.progress-label{color:#374151;font-size:.8em;margin-top:6px}.floor-item{background:#fff;border:1px solid #eef2ff;border-radius:8px;margin-bottom:10px;padding:10px}.floor-meta{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.floor-cap{color:#6b7280;font-size:.9em}.floor-diagram{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:12px}.floor-diagram-floor{background:#f8fbff;border:1px solid #dbeafe;border-radius:8px;box-sizing:border-box;padding:10px;width:100%}.floor-diagram-floor h5{color:#1e3a8a;margin:0 0 8px}.floor-sections{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.floor-section{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;max-width:100%;min-width:0;padding:12px}.floor-section-name{color:#0f172a;font-weight:700;margin:0 0 8px}.floor-summary-card .parking-card-header{background:#0000;border-color:#0000}.space-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));min-width:0}.space-grid--cards{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.space-tile{border:2px solid #cbd5e1;border-radius:8px;display:flex;flex-direction:column;font-size:.78rem;gap:3px;padding:6px}.space-free{color:#475569}.floor-overview-card{margin-bottom:18px}.floor-list{margin-top:18px}.floor-summary-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px;width:100%}.floor-summary-grid .floor-summary-card{box-sizing:border-box;max-width:none;min-width:0;width:100%}.floor-summary-card{min-height:175px}.floor-summary-card .progress{margin-top:12px}.space-tile strong{font-size:.82rem}.section-card{background:#fff;border:2px solid #cbd5e1;border-radius:12px;display:flex;flex-direction:column;font-size:.8rem;gap:8px;min-height:140px;min-width:0;padding:10px}.section-card strong{font-size:.82rem}.section-card-occupied{box-shadow:inset 0 0 0 1px #1e293b1f}.section-card-free{color:#475569}.space-occupied{box-shadow:inset 0 0 0 1px #1e293b1f}.error{color:#b00020;font-weight:600}@media (max-width:1100px){.floor-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.parking-grid{grid-template-columns:repeat(2,1fr)}.floor-sections,.floor-summary-grid,.parking-stat-grid--two-col,.space-grid--cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.floor-sections,.floor-summary-grid,.parking-grid,.parking-stat-grid,.parking-stat-grid--two-col{grid-template-columns:1fr}.space-grid--cards{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:420px){.space-grid--cards{grid-template-columns:1fr}}.not-found{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center}.not-found h2{color:#d32f2f;font-size:2.5em}.not-found p{color:#666;font-size:1.2em;margin-bottom:30px}.btn{background-color:#282c34;border-radius:4px;color:#fff;display:inline-block;font-size:1em;padding:12px 30px;text-decoration:none;transition:background-color .3s ease}.btn:hover{background-color:#3d4149}.space-card.section-card{border-color:#cbd5e1;overflow:hidden;padding-top:14px;position:relative}.space-card.section-card:before{background:#cbd5e1;background:var(--space-car-color,#cbd5e1);border-bottom:1px solid #0f172a52;content:"";height:7px;inset:0 0 auto;position:absolute}.space-action-buttons{display:flex;gap:6px;justify-content:flex-start;margin-top:auto}.space-card-header{align-items:center;display:flex;gap:8px;justify-content:space-between}.space-card-number{color:#0f172a;font-size:.83rem}.space-card-status{border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:.04em;padding:2px 8px;text-transform:uppercase}.space-card-status--occupied{background-color:#ef444429;color:#7f1d1d}.space-card-status--open{background-color:#10b98129;color:#065f46}.space-card-vehicle{color:#1e293b;font-size:.78rem;font-weight:600;line-height:1.25;margin:0;overflow-wrap:anywhere}.space-card-open-note{color:#64748b;font-size:.74rem;margin:0}.space-card-meta{grid-gap:4px;display:grid;gap:4px;margin:0}.space-card-meta div{align-items:baseline;display:flex;gap:6px;justify-content:space-between;min-width:0}.space-card-meta dt{color:#64748b;font-size:.69rem;font-weight:700;letter-spacing:.04em;margin:0;text-transform:uppercase}.space-card-meta dd{color:#0f172a;font-size:.74rem;font-weight:600;margin:0;overflow-wrap:anywhere;text-align:right}.space-card-color-value{align-items:center;display:inline-flex;gap:6px}.space-card-color-value:before{background:#cbd5e1;background:var(--space-car-color,#cbd5e1);border:1px solid #0f172a73;border-radius:999px;box-shadow:inset 0 0 0 1px #fff9;content:"";height:11px;width:11px}.space-action-btn{align-items:center;border:none;border-radius:999px;color:#fff;cursor:pointer;display:inline-flex;font-size:18px;font-weight:700;height:30px;justify-content:center;line-height:1;width:30px}.space-action-btn:disabled{background-color:#d1d5db;cursor:not-allowed;opacity:.6}.space-action-btn--add:not(:disabled){background-color:#10b981}.space-action-btn--remove:not(:disabled){background-color:#ef4444}.chatbot{background:#0000;border:none;border-radius:0;box-shadow:none;display:flex;flex-direction:column;height:300px;margin:0 auto 1.25rem;overflow:hidden;width:min(100%,1200px)}.chatbot-title{font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.chatbot-messages{background:#1e293b1f;display:flex;flex:1 1;flex-direction:column;gap:10px;overflow-y:auto;padding:14px 14px 8px;scroll-padding-top:14px;scrollbar-color:#020617f2 #0f172a59}.chatbot-messages::-webkit-scrollbar{width:10px}.chatbot-messages::-webkit-scrollbar-track{background:#0f172a59}.chatbot-messages::-webkit-scrollbar-thumb{background:#020617f2;border-radius:999px}.chatbot-messages--expanded{padding-top:18px}.chatbot-bubble{border-radius:16px;font-size:.94rem;line-height:1.55;max-width:82%;padding:10px 14px;word-break:break-word}.chatbot-bubble--user{align-self:flex-end;background:#0f172ac7;border-bottom-right-radius:6px;color:#f8fafc}.chatbot-bubble--bot{align-self:flex-start;background:#1e293b94;border-bottom-left-radius:6px;color:#e2e8f0}.chatbot-bubble--typing{align-items:center;display:flex;gap:5px;padding:12px 14px}.chatbot-bubble--typing span{animation:chatbot-bounce 1.2s ease-in-out infinite;background:#111827;border-radius:50%;display:inline-block;height:7px;opacity:.45;width:7px}.chatbot-bubble--typing span:nth-child(2){animation-delay:.15s}.chatbot-bubble--typing span:nth-child(3){animation-delay:.3s}@keyframes chatbot-bounce{0%,80%,to{opacity:.45;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}.chatbot-input-row{align-items:flex-end;background:#0000;border-top:1px solid #e2e8f0;border-top:1px solid var(--las-border,#e2e8f0);display:flex;flex-shrink:0;gap:8px;padding:10px 12px}.chatbot-input{background:#0f172a9e;border:1px solid #e2e8f0;border:1px solid var(--las-border,#e2e8f0);border-radius:12px;color:#e2e8f0;flex:1 1;font-family:inherit;font-size:.92rem;line-height:1.5;max-height:96px;outline:none;overflow-y:auto;padding:9px 12px;resize:none;transition:border-color .2s ease}.chatbot-input:focus{border-color:#11182766}.chatbot-input:disabled{background:#1f29379e}.chatbot-send-btn{align-items:center;background:#0f172ac7;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:.78rem;font-weight:700;height:38px;justify-content:center;letter-spacing:.06em;min-width:86px;text-transform:uppercase;transition:background .2s ease,transform .15s ease}.chatbot-send-btn:hover:not(:disabled){background:#1f2937d9;transform:translateY(-1px)}.chatbot-send-btn:disabled{cursor:not-allowed;opacity:.5}.intro-home{display:flex;flex-direction:column;min-height:100vh;overflow:hidden;position:relative}.intro-home:before{content:"";inset:0;pointer-events:none;position:fixed;z-index:0}.intro-home>*{position:relative;z-index:1}.intro-top-nav{align-items:center;display:flex;left:20px;padding:10px 0 8px;position:absolute;right:20px;top:12px}.intro-top-nav-brand{margin-right:auto}.intro-top-nav-links{align-items:center;display:flex;gap:20px;margin-left:auto}.intro-top-nav-link{background:#0000;border:none;color:#e2e8f0;display:inline-block;font-size:1rem;font-weight:700;padding:0;text-decoration:none;transition:color .2s ease,transform .2s ease}.intro-top-nav-link:focus-visible,.intro-top-nav-link:hover{color:var(--las-gold);outline:none;transform:translateY(-1px)}.intro-header-bar{background:#153b6d;margin-top:64px;padding:1px;width:100%}.intro-header-bar-content{padding-bottom:0;padding-top:0}.intro-header-bar-kicker{color:var(--las-gold);font-size:.8rem;font-weight:800;letter-spacing:.24em;margin:0 0 8px;text-transform:uppercase}.intro-header-bar h1{color:#f8fafc;font-size:clamp(2rem,5vw,3.5rem);line-height:1.05;margin:0}.intro-header-bar-summary{color:#cbd5e1;font-size:1rem;line-height:1.7;margin:12px 0 0;max-width:720px}.intro-top-nav-github-link{align-items:center;display:inline-flex;gap:7px}.intro-main{padding-bottom:48px;padding-top:32px;text-align:left}.intro-home footer{padding-bottom:9px;padding-top:9px}.intro-content-layout{grid-gap:28px;align-items:start;display:grid;gap:28px;grid-template-columns:minmax(0,1fr) minmax(220px,300px)}.intro-copy-block{color:#cbd5e1;max-width:100%}.intro-copy-block p{line-height:1.8;margin:0}.intro-copy-block p+p{margin-top:14px}.intro-sidebar{grid-gap:18px;align-content:start;display:grid;gap:18px}.intro-experience-column{background:#02061794;border:1px solid #94a3b84d;border-radius:10px;margin:0;padding:0 14px 16px}.intro-experience-column h2{color:#e2e8f0;font-size:1rem;margin:0;padding:14px 0 0}.intro-experience-list{grid-gap:12px;display:grid;gap:12px;margin-top:12px}.intro-experience-item h3{color:#f8fafc;font-size:.95rem;margin:0}.intro-experience-company,.intro-experience-years{color:#93c5fd;font-size:.85rem;margin:4px 0 0}.intro-experience-years{color:#cbd5e1}.intro-experience-item p{font-size:.84rem;line-height:1.55;margin:6px 0 0}.intro-skills-grid{grid-gap:0;border-left:1px solid #94a3b84d;border-top:1px solid #94a3b84d;display:grid;gap:0;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0}.intro-skill-box{align-items:center;background:#0000;border-bottom:1px solid #94a3b84d;border-radius:0;border-right:1px solid #94a3b84d;color:#e2e8f0;display:flex;font-size:.76rem;font-weight:700;min-height:32px;padding:6px 8px}.intro-panel{background:#ffffffe6;border:1px solid var(--las-border);border-radius:16px;box-shadow:0 10px 24px #071a2f14;padding:22px}.intro-panel h2{color:var(--las-navy);font-size:clamp(1.5rem,3vw,2.1rem);margin:0}.intro-panel p{color:#334155;line-height:1.7;margin:12px 0 0}.intro-highlight-list{color:#334155;margin:18px 0 0;padding-left:20px}.intro-highlight-list li+li{margin-top:8px}.intro-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-top:24px}.intro-support-grid{margin-top:18px}.intro-card{background:#0b1220;border:1px solid var(--las-border);border-radius:14px;box-shadow:0 8px 22px #02061780;padding:20px}.intro-card h3{color:var(--las-navy);margin:0}.intro-card p{color:var(--las-muted);line-height:1.6;margin:10px 0 0}.projects-list{grid-gap:18px;display:grid;gap:18px;margin-top:24px}.projects-item{background:#0000;border:none;border-radius:0;padding:0}.projects-item-header{align-items:baseline;display:flex;gap:12px;justify-content:space-between}.projects-item-header h3{color:#f8fafc;font-size:.95rem;margin:0}.projects-item-header a{color:#93c5fd;font-size:.88rem;font-weight:700;text-decoration:none}.projects-item-header a:focus-visible,.projects-item-header a:hover{color:var(--las-gold);outline:none}.projects-item-timeline{color:#cbd5e1;font-size:.8rem;font-weight:700;margin:8px 0 0}.projects-item-list{color:#cbd5e1;font-size:.88rem;line-height:1.55;margin:8px 0 0;padding-left:20px}.projects-item-list li+li{margin-top:6px}.intro-tech-list{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:16px 0 0;padding:0}.intro-tech-pill{background:#0f355714;border:1px solid #0f35571f;border-radius:999px;color:var(--las-navy);font-size:.95rem;font-weight:600;padding:8px 12px}.intro-link-group{align-items:flex-start;display:flex;flex-direction:column}.intro-architecture-list{grid-gap:14px;display:grid;gap:14px;margin-top:16px}.intro-architecture-item{background:#0f35570a;border:1px solid #0f355714;border-radius:12px;padding:14px}.intro-architecture-item h4{color:var(--las-navy);font-size:1rem;margin:0}.intro-architecture-item p{margin:8px 0 0}.intro-card-link{color:var(--las-blue);display:inline-block;font-weight:700;margin-top:14px;text-decoration:none}.intro-card-link:hover{color:var(--las-navy)}@media (max-width:768px){.intro-top-nav{flex-wrap:wrap;left:12px;right:12px;top:12px}.intro-top-nav-brand,.intro-top-nav-links{margin-left:0;margin-right:0}.intro-top-nav-links{flex-wrap:wrap;justify-content:flex-end;width:100%}.intro-header-bar{margin-top:80px;padding:24px 0}.intro-header-bar-summary{font-size:.95rem}.intro-actions{flex-direction:column}.intro-primary-link,.intro-secondary-link{width:100%}.intro-content-layout{gap:18px;grid-template-columns:1fr}}
/*# sourceMappingURL=main.bb9db608.css.map*/