:root{color:#17201a;background:#f5f7f2;font-family:Inter,Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#ffffffb8,#f5f7f2db),#f5f7f2}a{color:inherit;text-decoration:none}button{font:inherit}.app-shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:32px 0 56px}.hero-section{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:stretch;min-height:430px;padding:34px;color:#f8fff8;background:linear-gradient(120deg,#112c1ff5,#135c58d1),url(/profile/captures/admin-dashboard.png) center / cover;border-radius:0}.hero-content{display:flex;align-items:center;gap:26px}.profile-photo{display:block;flex:0 0 auto;width:160px;height:210px;border:2px solid rgba(255,255,255,.72);border-radius:8px;background:#ffffff2e;object-fit:cover;object-position:center top;box-shadow:0 18px 42px #05120a47}.eyebrow{margin:0 0 10px;color:#628070;font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}.hero-section .eyebrow{color:#c5e9d8}h1,h2,h3,p{margin-top:0}h1{margin-bottom:8px;font-size:clamp(44px,7vw,86px);line-height:.96;letter-spacing:0}h2{margin-bottom:0;font-size:26px;line-height:1.2;letter-spacing:0}h3{margin-bottom:10px;font-size:17px}.role{margin-bottom:18px;color:#d2f1e4;font-size:22px;font-weight:700}.summary{max-width:680px;margin-bottom:28px;color:#edf8f2;font-size:18px;line-height:1.65}.hero-actions,.inline-links{display:flex;flex-wrap:wrap;gap:10px}.primary-button,.secondary-button,.inline-links a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border-radius:6px;font-weight:800}.primary-button{border:0;color:#10241a;background:#d9f28c;cursor:pointer}.secondary-button{color:#f9fff8;border:1px solid rgba(255,255,255,.42);background:#ffffff14}.status-panel{display:grid;gap:12px;align-content:center}.status-panel>div{padding:22px;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:#0a1f1870;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.metric{display:block;font-size:40px;font-weight:900}.metric-label{color:#d7eee5;font-size:13px;font-weight:800}.section-grid,.content-section{margin-top:24px}.section-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.profile-panel,.content-section{padding:26px;border:1px solid #dce5d8;border-radius:8px;background:#ffffffd1}.section-heading{margin-bottom:22px}.info-list{display:grid;gap:12px;margin:0 0 22px}.info-list div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px}dt{color:#6a766f;font-weight:800}dd{min-width:0;margin:0;overflow-wrap:anywhere}.skill-list{display:flex;flex-wrap:wrap;gap:8px}.skill-list span{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border:1px solid #d7e3d2;border-radius:999px;color:#234231;background:#f2f7ed;font-size:13px;font-weight:800}.personal-block,.business-block{margin-top:26px;padding-top:22px;border-top:1px solid #e1e8dd}.personal-block h3,.business-block h3{margin-bottom:14px}.business-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.business-heading h3{margin-bottom:0}.document-button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 12px;border:1px solid #c8d8c1;border-radius:6px;color:#153c2d;background:#fff;font-size:13px;font-weight:900;cursor:pointer}.document-button:hover,.document-button:focus-visible{border-color:#9dbc93;background:#f2f7ed}.personal-list,.business-list{display:grid;gap:10px;margin:0}.personal-list div,.business-list div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;align-items:center}.personal-list dd{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.business-list dd{color:#1d3326;font-weight:750;line-height:1.45}.visibility-badge{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:900}.visibility-badge.public{color:#17442b;background:#def2d8}.visibility-badge.private{color:#6d3f13;background:#fff0d4}.visibility-badge.masked{color:#244163;background:#ddeafe}.privacy-note{margin:14px 0 0;color:#6b766f;font-size:13px;line-height:1.5}.notice{margin-bottom:18px;color:#53645a;line-height:1.55}.local-cloud-section{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;align-items:start}.local-cloud-summary{margin-bottom:20px;color:#31463a;font-size:17px;line-height:1.7}.spec-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 20px}.spec-list div{min-width:0;padding:12px;border:1px solid #dce5d8;border-radius:6px;background:#fff}.spec-list dt{margin-bottom:4px;color:#628070;font-size:11px;font-weight:900;text-transform:uppercase}.spec-list dd{color:#183424;font-size:13px;font-weight:800;line-height:1.4}.local-cloud-points{display:grid;gap:12px}.local-cloud-points article{min-width:0;padding:18px;border:1px solid #dce5d8;border-radius:8px;background:#fbfdf9}.local-cloud-points h3{margin-bottom:8px;color:#17442b}.local-cloud-points p{margin-bottom:0;color:#53645a;line-height:1.6}.manage-feature-section{display:grid;grid-template-columns:minmax(0,.86fr) minmax(360px,1.14fr);gap:24px;align-items:start}.manage-feature-copy{min-width:0}.feature-subtitle{margin-bottom:12px;color:#17442b;font-size:18px;font-weight:900}.feature-summary{margin-bottom:20px;color:#31463a;font-size:16px;line-height:1.72}.secondary-feature-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border:1px solid #cad9c4;border-radius:6px;color:#153c2d;background:#fff;font-weight:900}.feature-stack{margin-top:18px}.manage-feature-shot{display:block;width:100%;min-width:0;padding:0;border:1px solid #cfdcca;border-radius:8px;overflow:hidden;background:#fff;cursor:zoom-in;box-shadow:0 18px 42px #1f37281f}.manage-feature-shot:focus-visible{outline:3px solid #7fb174;outline-offset:3px}.manage-feature-shot img{display:block;width:100%;aspect-ratio:16 / 10;object-fit:cover;object-position:left top}.manage-feature-details{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:18px}.feature-list{display:grid;gap:10px}.feature-list p{margin:0;padding:14px 16px;border-left:4px solid #7fb174;border-radius:6px;color:#31463a;background:#f6faf3;line-height:1.55}.feature-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.feature-module-grid article{min-width:0;padding:16px;border:1px solid #dce5d8;border-radius:8px;background:#fff}.feature-module-grid h3{margin-bottom:8px;color:#17442b}.feature-module-grid p{margin-bottom:0;color:#53645a;line-height:1.55}.service-list{display:grid;gap:18px}.service-list article{padding-top:16px;border-top:1px solid #e1e8dd}.inline-links a{display:grid;justify-content:start;min-height:48px;padding-top:8px;padding-bottom:8px;border:1px solid #cad9c4;color:#153c2d;background:#fff;font-size:13px}.service-link-label{font-weight:900}.service-link-url{min-width:0;color:#65746b;font-size:11px;font-weight:700;overflow-wrap:anywhere}.capture-device-sections{display:grid;gap:26px}.capture-device-section{min-width:0}.capture-device-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #e1e8dd}.capture-device-heading h3{margin-bottom:0;color:#17442b;font-size:19px}.capture-device-heading span{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border:1px solid #d7e3d2;border-radius:999px;color:#234231;background:#f2f7ed;font-size:12px;font-weight:900}.capture-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.mobile-capture-section .capture-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.capture-card{min-width:0;margin:0;border:1px solid #dce5d8;border-radius:8px;overflow:hidden;background:#fff}.capture-image-button{position:relative;display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.platform-badge{position:absolute;top:10px;left:10px;z-index:1;display:inline-flex;align-items:center;min-height:26px;padding:0 9px;border:1px solid rgba(255,255,255,.72);border-radius:999px;color:#fff;background:#122033d1;font-size:11px;font-weight:900;box-shadow:0 8px 20px #05120a2e}.capture-image-button:focus-visible{outline:3px solid #7fb174;outline-offset:-3px}.capture-image-button img{display:block;width:100%;aspect-ratio:16 / 10;object-fit:cover;background:#dfe9e5;transition:transform .18s ease,filter .18s ease}.capture-image-button:hover img{filter:brightness(.94);transform:scale(1.015)}.capture-card.portrait .capture-image-button img{aspect-ratio:9 / 16;object-fit:contain;object-position:center top;background:#120d0d}.capture-card figcaption{display:grid;gap:5px;padding:12px}.capture-card strong{font-size:14px}.capture-card span{color:#66736b;font-size:12px;line-height:1.45}.gitlab-layout{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-group{min-width:0}.project-group ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.project-group a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;padding:0 12px;border:1px solid #dde6da;border-radius:6px;background:#fbfdf9;color:#183424;font-size:13px;font-weight:750}.project-group a span:first-child{min-width:0;overflow-wrap:anywhere}.modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:20px;background:#0c1912ad}.career-modal{width:min(940px,100%);max-height:min(760px,calc(100vh - 40px));overflow:auto;border-radius:8px;background:#fff;box-shadow:0 24px 90px #05120a57}.certificate-modal{width:min(860px,100%);height:min(860px,calc(100vh - 40px));overflow:hidden;border-radius:8px;background:#fff;box-shadow:0 24px 90px #05120a57}.modal-header{position:sticky;top:0;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 26px;border-bottom:1px solid #e4ebe1;background:#fffffff5}.icon-button{display:grid;place-items:center;width:42px;height:42px;border:1px solid #d8e1d5;border-radius:6px;background:#f8fbf5;color:#1d3326;font-size:26px;line-height:1;cursor:pointer}.certificate-viewer{height:calc(100% - 91px);background:#eef3ea}.certificate-viewer object{display:block;width:100%;height:100%;border:0}.certificate-viewer p{margin:0;padding:26px;color:#53645a;line-height:1.6}.certificate-viewer a{color:#17442b;font-weight:900;text-decoration:underline}.capture-backdrop{padding:18px}.capture-modal{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(1180px,100%);max-height:calc(100vh - 36px);overflow:hidden;border-radius:8px;background:#fff;box-shadow:0 24px 90px #05120a57}.capture-modal-header{position:static}.capture-modal-body{min-height:0;padding:18px;overflow:auto;background:#0f1712}.capture-modal-body img{display:block;width:auto;max-width:100%;height:auto;max-height:calc(100vh - 210px);margin:0 auto;border-radius:6px;background:#fff;object-fit:contain}.capture-modal-caption{margin:0;padding:16px 24px 20px;color:#53645a;line-height:1.55}.career-list{display:grid;gap:0;padding:0 26px 26px}.career-item{display:grid;grid-template-columns:130px minmax(0,1fr);gap:22px;padding:22px 0;border-bottom:1px solid #e4ebe1}.career-period{color:#2e6445;font-weight:900}.career-role,.outcome{color:#58665f;font-weight:750}.compact{margin:14px 0}@media(max-width:980px){.hero-section,.section-grid,.local-cloud-section,.manage-feature-section,.manage-feature-details,.gitlab-layout{grid-template-columns:1fr}.capture-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-capture-section .capture-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){.app-shell{width:min(100% - 20px,1180px);padding:10px 0 34px}.hero-section{min-height:auto;padding:22px}.hero-content{display:grid}.profile-photo{width:120px;height:156px}h1{font-size:44px}.role{font-size:19px}.summary{font-size:16px}.profile-panel,.content-section{padding:20px}.capture-grid{grid-template-columns:1fr}.mobile-capture-section .capture-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-module-grid{grid-template-columns:1fr}.info-list div,.personal-list div,.business-list div,.spec-list,.career-item{grid-template-columns:1fr;gap:8px}}
