/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.table{display:table}}:root{--ink:#071820;--ink-2:#15323d;--paper:#f5f1e8;--white:#fffdf7;--line:#c4c2b8;--mint:#56dfbd;--mint-dark:#087b68;--orange:#ff9c2a;--blue:#3e78ff;--red:#dc543f}*{box-sizing:border-box}html,body{background:var(--paper);width:100%;height:100%;color:var(--ink);margin:0;overflow:hidden}body{min-width:320px;font-family:var(--font-body), sans-serif}button,input,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.atlas-shell{background:linear-gradient(#07182009 1px, transparent 1px), linear-gradient(90deg, #07182009 1px, transparent 1px), var(--paper);background-size:30px 30px;grid-template-rows:auto auto minmax(0,1fr) auto;width:100%;height:100dvh;display:grid;position:relative;overflow:hidden}.masthead{background:var(--ink);min-height:82px;color:var(--white);border-bottom:1px solid #24434e;justify-content:flex-start;align-items:center;gap:22px;padding:12px clamp(16px,3vw,44px);display:flex}.brand-lockup{align-items:center;gap:13px;min-width:0;display:flex}.brand-stamp{width:46px;height:46px;color:var(--mint);font-family:var(--font-display), sans-serif;letter-spacing:.04em;background:#56dfbd1f;border:1px solid #56dfbda6;flex:none;place-items:center;font-size:1.25rem;font-weight:900;display:grid}.public-label{color:var(--mint);letter-spacing:.15em;text-transform:uppercase;margin-bottom:1px;font-size:.62rem;font-weight:800;display:block}.masthead h1{font-family:var(--font-display), sans-serif;letter-spacing:-.035em;margin:0;font-size:clamp(2rem,3.2vw,3.4rem);font-weight:900;line-height:.86}.atlas-nav{align-items:center;gap:4px;display:flex}.atlas-nav a{color:var(--white);letter-spacing:.05em;text-transform:uppercase;border:1px solid #fffdf73d;padding:9px 11px;font-size:.7rem;font-weight:800;text-decoration:none}.atlas-nav a:hover{border-color:var(--mint);color:var(--mint);background:#56dfbd1f}.portfolio-stats{color:#b8c8cc;text-transform:uppercase;justify-content:flex-end;align-items:center;gap:clamp(12px,2.4vw,34px);min-width:0;margin-left:auto;font-size:.74rem;font-weight:700;display:flex}.portfolio-stats span{white-space:nowrap}.portfolio-stats strong{color:var(--white);font-family:var(--font-display), sans-serif;margin-right:3px;font-size:1.65rem;font-weight:900;line-height:1}.portfolio-stats .repair-stat strong{color:var(--orange)}.control-deck{border-bottom:1px solid var(--line);background:#f5f1e8f5;grid-template-columns:minmax(230px,.82fr) minmax(180px,.42fr) minmax(390px,1fr);align-items:center;gap:10px;min-height:70px;padding:9px clamp(16px,3vw,44px);display:grid}.search-field{background:var(--white);border:1px solid #8a999d;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;height:46px;padding:0 12px;display:grid}.search-field>span{color:var(--mint-dark);font-family:var(--font-display), sans-serif;font-size:1.6rem;font-weight:900;line-height:1}.search-field input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:.9rem;font-weight:750}.search-field input::placeholder{color:#67777d}.search-field kbd{border:1px solid var(--line);color:#65757a;background:#ece8de;padding:3px 6px;font-size:.63rem;font-weight:800}.category-select{background:var(--white);border:1px solid #8a999d;flex-direction:column;justify-content:center;height:46px;padding:4px 30px 4px 11px;display:flex;position:relative}.category-select span{color:var(--mint-dark);letter-spacing:.12em;text-transform:uppercase;font-size:.54rem;font-weight:900}.category-select select{appearance:none;width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:.78rem;font-weight:800}.category-select:after{content:"▾";color:var(--ink);pointer-events:none;font-size:.75rem;position:absolute;bottom:11px;right:11px}.view-switch{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;display:grid}.view-switch button{height:38px;color:var(--ink);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #8a999d;padding:0 8px;font-size:.7rem;font-weight:850}.view-switch button:hover{background:#0718200f}.view-switch button.active{border-color:var(--ink);background:var(--ink);color:var(--white)}.project-stage{min-height:0;padding:10px clamp(12px,2vw,30px);overflow:hidden}.project-list{background:#fffdf7e0;border:1px solid #8e9da1;border-bottom:0;flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.list-header,.project-row{grid-template-columns:46px 30px minmax(0,1fr) 132px 100px 140px 24px;align-items:center;gap:12px;padding:0 12px;display:grid}.list-header{border-bottom:1px solid var(--ink);background:var(--ink);color:#9fb2b8;letter-spacing:.11em;text-transform:uppercase;flex:0 0 27px;font-size:.53rem;font-weight:900}.project-row{--state-color:var(--line);border:0;border-bottom:1px solid #c5c8c3;border-left:4px solid var(--state-color);min-width:0;min-height:0;color:var(--ink);text-align:left;cursor:pointer;animation:.22s both row-in;animation-delay:calc(var(--row-order) * 10ms);background:0 0;flex:1 1 0;transition:background .14s,color .14s;overflow:hidden}.project-row:hover{background:#e7f5ef}.project-row.state-public{--state-color:var(--mint-dark)}.project-row.state-mixed{--state-color:var(--blue)}.project-row.state-protected{--state-color:var(--orange)}.project-row.state-info{--state-color:#829095}.row-number{color:#7b898d;font-family:var(--font-display), sans-serif;letter-spacing:.08em;font-size:.74rem;font-weight:800}.row-emoji{text-align:center;font-size:1rem;line-height:1}.row-project{grid-template-columns:minmax(130px,.42fr) minmax(0,1fr);align-items:center;gap:15px;min-width:0;display:grid}.row-project strong{color:var(--ink);font-family:var(--font-display), sans-serif;letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.98rem,1.24vw,1.22rem);font-weight:850;line-height:1;overflow:hidden}.row-project>span{color:#53676e;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.59rem,.72vw,.69rem);font-weight:650;overflow:hidden}.row-category{color:#40575f;letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:6px;font-size:.61rem;font-weight:850;display:inline-flex}.row-category>span{font-size:.8rem}.row-started{color:#53676e;letter-spacing:.02em;white-space:nowrap;font-size:.59rem;font-weight:850}.row-status{color:#40575f;letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:6px;font-size:.58rem;font-weight:850;display:flex}.row-status b{background:var(--ink);color:var(--mint);letter-spacing:.1em;padding:2px 5px;font-size:.5rem}.row-arrow{color:var(--state-color);text-align:right;font-size:1rem;font-weight:900}.pager{background:var(--ink);color:#bdcbcf;border-top:1px solid #294851;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;min-height:58px;padding:7px clamp(16px,3vw,44px);font-size:.69rem;font-weight:700;display:grid}.page-range b,.page-controls b{color:var(--white)}.page-controls{align-items:center;gap:10px;display:flex}.page-controls button{width:40px;height:38px;color:var(--white);cursor:pointer;background:#102932;border:1px solid #5f7880;place-items:center;font-size:1rem;font-weight:900;display:grid}.page-controls button:not(:disabled):hover{border-color:var(--mint);color:var(--mint)}.page-controls button:disabled{opacity:.3;cursor:default}.privacy-note{color:#93a8ae;text-align:right;justify-self:end}.empty-state{text-align:center;background:#fffdf7b8;border:1px dashed #8a999d;place-content:center;justify-items:center;gap:8px;height:100%;display:grid}.empty-state>span{font-size:2rem}.empty-state button{border:1px solid var(--ink);background:var(--ink);color:var(--white);cursor:pointer;margin-top:6px;padding:8px 14px;font-size:.72rem;font-weight:800}.detail-backdrop{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#030f14bd;place-items:center;padding:14px;animation:.15s ease-out fade-in;display:grid;position:fixed;inset:0}.detail-panel{border:1px solid #71858b;border-top:7px solid var(--mint);background:linear-gradient(#0718200a 1px, transparent 1px), var(--white);width:min(650px,100%);height:min(88dvh,700px);color:var(--ink);background-size:100% 30px;grid-template-rows:auto auto minmax(0,1fr);padding:clamp(24px,4vw,42px);animation:.18s ease-out panel-in;display:grid;position:relative;overflow:hidden;box-shadow:18px 18px #00000040}.detail-close{background:var(--ink);width:40px;height:40px;color:var(--white);cursor:pointer;border:1px solid #819196;place-items:center;font-size:1.45rem;line-height:1;display:grid;position:absolute;top:12px;right:12px}.detail-heading{min-width:0}.detail-category{color:var(--mint-dark);letter-spacing:.12em;text-transform:uppercase;font-size:.67rem;font-weight:900}.detail-panel h2{max-width:calc(100% - 46px);font-family:var(--font-display), sans-serif;letter-spacing:-.045em;text-overflow:ellipsis;white-space:nowrap;margin:6px 0 0;font-size:clamp(2.15rem,5vw,4rem);font-weight:900;line-height:.9;overflow:hidden}.detail-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:16px 0 12px;display:grid}.detail-tabs button{color:#40575f;cursor:pointer;letter-spacing:.06em;text-transform:uppercase;background:#f5f1e8b8;border:1px solid #8a999d;min-height:43px;font-size:.7rem;font-weight:900}.detail-tabs button:hover{border-color:var(--mint-dark);color:var(--mint-dark);background:#e9f8f2}.detail-tabs button.active{border-color:var(--ink);background:var(--ink);color:var(--white)}.detail-tab-panel{min-width:0;min-height:0;overflow:hidden}.detail-tab-panel-details{overscroll-behavior:contain;scrollbar-gutter:stable;flex-direction:column;display:flex;overflow:hidden auto}.detail-description{color:#344f58;max-width:58ch;margin:0;font-size:.86rem;font-weight:600;line-height:1.45}.detail-facts{grid-template-columns:1fr .58fr .58fr;gap:8px;margin:14px 0 9px;display:grid}.detail-facts>span{border:1px solid var(--line);background:#f5f1e8c2;flex-direction:column;gap:3px;min-width:0;padding:11px 12px;display:flex}.detail-facts small{color:#66787d;letter-spacing:.11em;text-transform:uppercase;font-size:.55rem;font-weight:900}.detail-facts strong{text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.link-list{gap:7px;margin-top:0;display:grid}.link-list a{border:1px solid var(--mint-dark);min-height:52px;color:var(--ink);background:#e9f8f2;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:8px 12px;text-decoration:none;transition:transform .14s,background .14s;display:grid}.link-list a:hover{background:#d9f3e9;transform:translate(3px)}.link-list a>span:first-child{color:var(--mint-dark);font-size:1.2rem;font-weight:900}.link-list a>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.link-list strong{font-size:.78rem}.link-list small{color:#526b72;text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;overflow:hidden}.link-list b{color:var(--mint-dark);letter-spacing:.08em;font-size:.58rem}.privacy-stack{gap:6px;margin-top:8px;display:grid}.privacy-stack p{border-left:4px solid var(--orange);color:#594526;background:#fff2d9;margin:0;padding:9px 11px;font-size:.68rem;font-weight:750}.detail-tab-panel-gallery{grid-template-rows:minmax(0,1fr) auto;gap:9px;display:grid}.gallery-frame{background:radial-gradient(circle at 50% 35%, #193b46 0, var(--ink) 72%), var(--ink);min-width:0;min-height:0;color:var(--white);border:1px solid #71858b;place-items:center;text-decoration:none;display:grid;position:relative;overflow:hidden}.gallery-frame .gallery-blur{filter:blur(16px)saturate(.82);object-fit:cover;opacity:.3;width:calc(100% + 36px);height:calc(100% + 36px);position:absolute;inset:-18px}.gallery-frame .gallery-image{z-index:1;object-fit:contain;width:100%;height:100%;display:block;position:relative}.gallery-frame>span{z-index:2;color:var(--white);letter-spacing:.04em;text-transform:uppercase;background:#071820e0;padding:5px 8px;font-size:.55rem;font-weight:850;position:absolute;bottom:8px;right:8px}.gallery-controls{grid-template-columns:46px minmax(0,1fr) 46px;gap:8px;min-height:54px;display:grid}.gallery-controls>button{border:1px solid var(--ink);background:var(--ink);color:var(--white);cursor:pointer;place-items:center;font-size:1.1rem;font-weight:900;display:grid}.gallery-controls>button:not(:disabled):hover{border-color:var(--mint-dark);background:var(--mint-dark)}.gallery-controls>button[aria-disabled=true]{opacity:.28;cursor:default}.gallery-controls>div{border:1px solid var(--line);background:#f5f1e8c2;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:7px 12px;display:flex}.gallery-controls strong{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.gallery-controls span{color:#5a6c72;font-family:var(--font-display), sans-serif;flex:none;font-size:.68rem;font-weight:900}.gallery-empty{text-align:center;background:#f5f1e8b3;border:1px dashed #8a999d;grid-row:1/-1;place-content:center;justify-items:center;gap:8px;height:100%;padding:22px;display:grid}.gallery-empty>span{font-size:2.4rem}.gallery-empty strong{font-family:var(--font-display), sans-serif;letter-spacing:-.02em;font-size:1.5rem;font-weight:900}.gallery-empty p{color:#53676e;max-width:36ch;margin:0;font-size:.72rem;font-weight:650;line-height:1.5}.gallery-empty button{border:1px solid var(--ink);background:var(--ink);min-height:42px;color:var(--white);cursor:pointer;padding:0 16px;font-size:.7rem;font-weight:850}.gallery-loading>span{animation:.9s linear infinite gallery-spin}@keyframes row-in{0%{opacity:0;transform:translate(-5px)}to{opacity:1;transform:translate(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes panel-in{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes gallery-spin{to{transform:rotate(360deg)}}@media (width<=1099px){.list-header,.project-row{grid-template-columns:38px 26px minmax(0,1fr) 110px 84px 116px 20px;gap:7px}.portfolio-stats span:nth-child(3){display:none}}@media (width<=780px){.masthead{min-height:70px;padding-block:9px}.brand-stamp{width:40px;height:40px;font-size:1.05rem}.masthead h1{font-size:2rem}.public-label{font-size:.52rem}.portfolio-stats span:nth-child(n+2){display:none}.portfolio-stats strong{font-size:1.45rem}.control-deck{grid-template-columns:minmax(0,1fr) minmax(130px,.48fr);gap:7px;min-height:99px;padding-block:7px}.view-switch{grid-column:1/-1}.view-switch button{height:32px;font-size:.64rem}}@media (width<=639px){.masthead{min-height:64px;padding-inline:10px}.brand-lockup{gap:8px}.brand-stamp{width:36px;height:36px}.masthead h1{font-size:1.8rem}.portfolio-stats{display:none}.atlas-nav{margin-left:auto}.atlas-nav a{padding:8px;font-size:.62rem}.control-deck{grid-template-columns:minmax(0,1fr) 118px;min-height:94px;padding:6px 8px}.search-field,.category-select{height:42px}.search-field{padding-inline:9px}.search-field input{font-size:.78rem}.search-field kbd{display:none}.category-select{padding-left:8px}.project-stage{padding:7px}.project-list{border-inline:0}.list-header{display:none}.project-row{grid-template-columns:17px minmax(0,1fr) 58px 14px;gap:4px;padding:0 6px}.row-number,.row-category{display:none}.row-emoji{font-size:.72rem}.row-project{flex-direction:row;align-items:center;gap:5px;min-width:0;display:flex}.row-project strong,.row-project>span{text-overflow:ellipsis;white-space:nowrap;display:inline-block;overflow:hidden}.row-project strong{flex:0 auto;max-width:48%;margin:0;font-size:.7rem;line-height:1}.row-project>span{color:#4b6067;flex:1 1 0;min-width:0;font-size:.52rem;font-weight:700;line-height:1}.row-project>span:before{content:"· ";color:#849398}.row-started{letter-spacing:-.01em;text-align:right;font-size:.49rem}.row-status{display:none}.row-arrow{font-size:.82rem}.pager{grid-template-columns:1fr auto;min-height:54px;padding:6px 9px}.privacy-note{display:none}.page-controls{gap:7px}.page-controls button{width:38px;height:36px}.detail-panel{width:100%;height:calc(100dvh - 16px);padding:18px 16px 16px;box-shadow:8px 8px #00000040}.detail-panel h2{font-size:clamp(2rem,10vw,3.15rem)}.detail-facts{grid-template-columns:1.12fr 1fr 1fr;gap:5px;margin-top:10px}.detail-facts>span{padding:8px 7px}.detail-facts small{font-size:.48rem}.detail-facts strong{white-space:normal;font-size:.61rem}.detail-description{font-size:.78rem;line-height:1.4}.detail-tabs{margin:12px 0 9px}.gallery-frame>span{font-size:.48rem;bottom:5px;right:5px}.gallery-controls{grid-template-columns:44px minmax(0,1fr) 44px;min-height:50px}.gallery-controls>div{padding-inline:9px}}@media (width<=420px){.brand-stamp,.public-label{display:none}.masthead h1{font-size:1.55rem}}@media (width>=1100px) and (height<=759px){.masthead{min-height:70px}.control-deck{min-height:62px}}@media (width<=639px) and (height<=699px){.masthead{min-height:58px}.control-deck{min-height:88px}.pager{min-height:48px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
