@charset "UTF-8";html{height:100%;scroll-behavior:smooth}body{margin:0;min-height:100%;background-color:#fff;color:#000;font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body.dark-mode{background-color:#000;color:#fff}body.dark-mode::-webkit-scrollbar{width:.5em;background-color:#000}body.dark-mode::-webkit-scrollbar-thumb{background-color:#6002ed;border-radius:999px}body.dark-mode>*{color:#fff}a{color:inherit;background-color:transparent;text-decoration:none;cursor:pointer}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}img,svg{max-width:100%}img{display:block}.skip-link{position:fixed;top:1rem;left:1rem;z-index:9999;padding:.75rem 1rem;background-color:#fff;color:#000;font-weight:700;text-decoration:none;border-radius:.25rem;transform:translateY(-200%);transition:transform .15s ease}.skip-link:focus-visible{transform:translateY(0)}#root{min-height:100vh;display:flex;flex-direction:column;max-width:60em;margin:0 auto;width:100%;position:relative}#root:hover .navbar{z-index:10}#root #app{padding:.375em}@media only screen and (min-width:30em){#root #app{padding:.75em}}.page{position:relative;min-height:100%;padding:0 .5625em}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}html{box-sizing:border-box;scroll-behavior:smooth}html,body{height:100%}*,*:before,*:after{box-sizing:inherit}body,p,a,ul,li,h3,h2,h1{margin:0;padding:0;text-decoration:none}ul{list-style-type:none}body{font-family:Montserrat,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:normal}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.transitiongroup>div{padding-left:0;padding-right:0}.pages-enter{opacity:0;transform:translate(-100%)}.pages-enter-active{opacity:1;transform:translate(0);transition:opacity .5s,transform .5s}.pages-enter,.pages-exit{position:absolute;width:100%;top:0;left:0}.edit-enter{opacity:0;transform:scale(0)}.edit-enter-active{opacity:1;transform-origin:top center;transform:scale(1);transition:opacity .5s,transform .5s}.edit-exit{opacity:1;transform:scale(1)}.edit-exit-active{opacity:0;transform:scale(0);transform-origin:top center;transition:opacity .5s,transform .5s}.hamburger-container{display:flex;justify-content:center}.hamburger-container .hamburger{display:flex;justify-content:center;align-items:center;position:relative;border:0;border-radius:50%;background:transparent;cursor:pointer}@media only screen and (min-width:30em){.hamburger-container .hamburger{height:52px}}.hamburger-container .hamburger.hamburger--open{padding:0}.hamburger-container .hamburger .hamburger__line{position:relative;display:block;width:20px;height:2px;background-color:#6002ed;transition:background-color .25s ease}.hamburger-container .hamburger .hamburger__line:before,.hamburger-container .hamburger .hamburger__line:after{content:"";position:absolute;left:0;width:20px;height:2px;background-color:#6002ed;transition:transform .25s ease,top .25s ease,bottom .25s ease}.hamburger-container .hamburger .hamburger__line:before{bottom:6px}.hamburger-container .hamburger .hamburger__line:after{top:6px}.hamburger-container .hamburger.hamburger--close .hamburger__line{background-color:transparent}.hamburger-container .hamburger.hamburger--close .hamburger__line:before{width:24px;bottom:0;transform:rotate(45deg)}.hamburger-container .hamburger.hamburger--close .hamburger__line:after{width:24px;top:0;transform:rotate(-45deg)}.btn{border-radius:6px}.footer{padding:0;position:absolute;bottom:0;display:flex;flex-direction:column;gap:2em;width:100%}.footer .socialList{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:"20px";padding:0;margin:0}.footer .socialIcons{display:flex;gap:5px}.footer .socialIcons :nth-child(2){padding-top:2.68px}.footer .socialIcons .socialIcon{width:fit-content;height:40px;width:40px;display:flex;justify-content:center;align-items:center;text-decoration:none;border-radius:50%;font-size:1.5em;position:relative;transition:"color 0.2s ease";cursor:pointer}.footer .socialIcons .socialIcon:after{content:"";width:100%;height:100%;background-color:#e303fc;opacity:1%;display:block;position:absolute;border-radius:inherit;top:0;left:0;z-index:1}.footer .socialIcons .socialIcon>*{position:relative;z-index:2}.footer .socialIcons .socialIcon:hover{color:gray}.footer .socialIcons .socialIcon:hover:after{opacity:20%}.switch-container{padding:0 10px;height:100%;display:flex;align-items:center}.switch{width:100%;display:flex;justify-content:center;align-items:center}.switch .switch__con{width:50px;height:24px;display:flex;align-items:center;border-radius:24px;cursor:pointer;background-color:#fff3;position:relative;transition:background-color .3s ease;box-shadow:inset 0 2px 4px #0003}.switch .switch__con:hover{background-color:#ffffff4d;box-shadow:inset 0 2px 6px #0000004d}.switch .switch__con .icon{width:20px;border:none;border-radius:50%;display:flex;justify-content:center;align-items:center;text-align:center;font-size:14px;position:absolute;transition:left .6s cubic-bezier(.34,1.56,.64,1),right .6s cubic-bezier(.34,1.56,.64,1),background .6s cubic-bezier(.34,1.56,.64,1),color .6s cubic-bezier(.34,1.56,.64,1);background-color:#fff;box-shadow:0 2px 4px #0000004d}.switch .switch__con .icon.light{right:2px;color:#ff9800;background:linear-gradient(135deg,#fff,#ffe0b2)}.switch .switch__con .icon.dark{left:2px;color:#7c4dff;background:linear-gradient(135deg,#e1bee7,#ce93d8)}.navbar{position:relative;isolation:isolate}.navbar .nav-body{height:50px;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:2;padding:0 .375em}.navbar .nav-body .logo{text-decoration:none;color:#6002ed;cursor:pointer}@media only screen and (min-width:30em){.navbar .nav-body .logo{width:fit-content;height:52px}}.navbar .nav-body .navbar-link{height:36px;justify-content:center;align-items:center;cursor:pointer;font-size:20px}.navbar .nav-body .navbar-link:focus-visible{outline:none!important}.showUp-enter,.showDown-enter{opacity:0}.showUp-enter-active,.showDown-enter-active{opacity:1;transition:opacity .5s,transform .5s}.showUp-exit,.showDown-exit{opacity:1}.showUp-exit-active,.showDown-exit-active{opacity:0;transition:opacity .5s,transform .5s}.show-enter{opacity:0}.show-enter-active{opacity:1;transition:opacity .5s,transform .5s}.show-exit{opacity:1}.show-exit-active{opacity:0;transition:opacity .5s,transform .5s}.sideBar{width:46px;border-radius:.3em 0 0 .3em;z-index:5;position:absolute;right:0;top:calc((100vh - 216px)/2);z-index:10;transition:.5s all ease-in}.sideBar:hover ul{position:relative;isolation:isolate;background-color:#00000029;border-radius:inherit}.sideBar:hover ul>*{position:relative;z-index:2}.sideBar:hover ul:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background-color:#00000029;border-radius:inherit}.sideBar:not(:hover) ul{position:relative;isolation:isolate;background-color:#0000000d;border-radius:inherit}.sideBar:not(:hover) ul>*{position:relative;z-index:2}.sideBar:not(:hover) ul:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background-color:#0000000d;border-radius:inherit}.sideBar ul{width:100%;padding:.5em 0;display:flex;flex-direction:column;gap:.375em;position:relative;transition:all .5s ease}.sideBar ul li{width:100%;height:2.25em;display:flex;justify-content:center;align-items:center;color:#fff}.sideBar .side__link{height:2em;width:2em;color:#6002ed;cursor:pointer;border-radius:50%;text-decoration:none;display:flex;justify-content:center;align-items:center;position:relative}.sideBar .side__link:hover,.sideBar .side__link.active{background-color:#6002ed4d}@media only screen and (min-width:30em){.sideBar{width:2.625em}.sideBar ul{width:100%;display:flex;flex-direction:column;position:relative}.sideBar ul li{width:100%}}@media only screen and (min-width:30em)and (min-width:30em){.sideBar{width:2.625em}.sideBar .side__link:before,.sideBar .side__link:after{color:transparent;position:absolute;z-index:1000;transform:scale(0);transition:.2s transform}.sideBar .side__link:before{content:attr(title);width:max-content;right:3.75em;transform-origin:right;padding:.5em;border-radius:.125em;font-size:.7em}.sideBar .side__link:after{content:"";left:-.625em;border:.625em solid transparent;transform-origin:left}.sideBar .side__link:hover:before,.sideBar .side__link:hover:after{transform:scale(1)}.sideBar .side__link:hover:before{color:#fff;background-color:#6002ed}.sideBar .side__link:hover:after{border:.4375em solid transparent;border-left-color:#6002ed}}.progress{width:100%;max-width:1200px;margin:0 auto;padding:2rem 0}.progress-header{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:1rem}.section-label{display:inline-block;margin-bottom:.5rem;font-size:1.5em;line-height:1em;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:.55}.progress-header h2{margin:0;font-size:2rem;line-height:1.2}.progress-header p{max-width:650px;margin:.6rem 0 0;font-size:.95rem;line-height:1.6;opacity:.65}.progress-percentage{flex-shrink:0;font-size:2.5rem;line-height:1}.progress-bar{width:100%;height:10px;overflow:hidden;border-radius:999px;background:#8080802e}.progress-bar-fill{height:100%;border-radius:inherit;background:currentColor;transition:width .4s ease}.repository-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.5rem 0}.repository-filters button{padding:.55rem 1rem;border:1px solid rgba(128,128,128,.25);border-radius:999px;background:transparent;color:inherit;font:inherit;font-size:.85rem;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}.repository-filters button:hover{border-color:#80808080;transform:translateY(-1px)}.repository-filters button.active{background:#6002ed;color:#fff;border-color:currentColor}.progress-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}.progress-stat{padding:1rem 1.2rem;border:1px solid rgba(128,128,128,.2);border-radius:12px;background:#8080800a}.progress-stat strong{display:block;font-size:1.5rem;line-height:1.2}.progress-stat span{display:block;margin-top:.3rem;font-size:.8rem;opacity:.6}.requirement-list{display:flex;flex-direction:column;gap:1rem}.requirement-card{padding:1.25rem;border:1px solid rgba(128,128,128,.2);border-radius:14px;background:#80808009;transition:border-color .2s ease,transform .2s ease}.requirement-card:hover{border-color:#80808066;transform:translateY(-1px)}.requirement-header h3{margin:.35rem 0 0;font-size:1.05rem;line-height:1.3}.requirement-header p{max-width:700px;margin:.5rem 0 0;font-size:.85rem;line-height:1.5;opacity:.6}.requirement-header strong{flex-shrink:0;font-size:1.1rem}.requirement-scope{display:inline-flex;align-items:center;padding:.25rem .55rem;border-radius:5px;background:#8080801f;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.75}.requirement-progress{width:100%;height:6px;margin-top:1rem;overflow:hidden;border-radius:999px;background:#80808026}.requirement-progress-fill{height:100%;border-radius:inherit;background:currentColor;transition:width .4s ease}.requirement-todos{display:flex;flex-direction:column;margin-top:1rem;border-top:1px solid rgba(128,128,128,.12)}.requirement-todo{display:flex;align-items:center;gap:.75rem;padding:.7rem 0;font-size:.85rem;border-bottom:1px solid rgba(128,128,128,.08)}.todo-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;border:1px solid rgba(128,128,128,.35);border-radius:50%;font-size:.7rem;font-weight:700}.todo-icon.done{border-color:currentColor}.todo-icon.in_progress{border-color:currentColor;font-size:1rem}.todo-icon.todo{opacity:.5}.no-todos{margin:0;padding:1rem 0;font-size:.8rem;opacity:.5}.progress-gantt{margin-top:2rem}.progress-gantt h3{margin:0 0 1rem;font-size:1.1rem}.gantt-placeholder{display:flex;align-items:center;justify-content:center;min-height:220px;padding:2rem;border:1px dashed rgba(128,128,128,.3);border-radius:14px;font-size:.85rem;opacity:.5}@media(max-width:800px){.progress{padding:1.5rem 0}.progress-header{align-items:flex-start;flex-direction:column;gap:1rem}.progress-percentage{font-size:2rem}.progress-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){.progress-header h2{font-size:1.5rem}.progress-stats{grid-template-columns:1fr 1fr;gap:.6rem}.progress-stat{padding:.8rem}.progress-stat strong{font-size:1.25rem}.repository-filters{gap:.4rem}.repository-filters button{padding:.45rem .75rem}.requirement-card{padding:1rem}.requirement-header{background-color:#4caf50;display:flex;gap:.5rem}.requirement-header h3{font-size:.95rem}}.progress-gantt{margin-top:4rem}.progress-gantt h3{margin-bottom:.5rem}.progress-gantt>p{margin-bottom:2rem;opacity:.7}.gantt-chart{width:100%;overflow-x:auto}.gantt-chart svg{display:block;min-width:800px}.gantt-chart .gantt-label{font-size:.8rem;fill:#6002ed}.gantt-chart .gantt-bar{cursor:pointer;transition:opacity .2s ease}.gantt-chart .gantt-bar:hover{opacity:.75}.gantt-chart .gantt-bar-done{fill:#4caf50}.gantt-chart .gantt-bar-in_progress{fill:#ff9800}.gantt-chart .gantt-bar-todo{fill:#777}.gantt-chart .gantt-grid line{stroke:#6002ed14}.gantt-chart .gantt-grid path{stroke:none}.gantt-chart .domain{stroke:#6002ed40}.gantt-chart .tick line{stroke:#6002ed26}.gantt-chart .tick text{fill:#6002ed;font-size:.7rem}#about h2{margin-bottom:1em}#about h3{padding:.6em 0 .1em;line-height:2em;border-bottom:2px solid hsl(264,98%,47%)}#about #profile .body{padding:.625em 0}#about #education .body{margin:1em 0}#about #education .body .period:first-child{position:relative;margin-bottom:1em}#about #education .body .period:first-child:before{content:"";position:absolute;left:0;top:8%;background-color:#6002ed}@media only screen and (min-width:30em){#about #education .body .period:first-child:before{height:calc(85% + 1em);top:15%}}#about #education .body .period:last-child{position:relative}#about #education .body .period:last-child:before{content:"";position:absolute;left:0;top:0;background-color:#6002ed}#about #education .body .period:not(:first-child,:last-child){position:relative;margin-bottom:1em}#about #education .body .period:not(:first-child,:last-child):before{content:"";position:absolute;left:0;top:0;background-color:#6002ed}#about #education .body .period .years>*{display:inline-block;width:13ch}#about #education .body .period .years .from{position:relative;margin:0 0 0 5ch}#about #education .body .period .years .from:before{content:"";height:.2em;width:3ch;position:absolute;left:-5ch;top:calc(50% - .1em);background-color:#6002ed}#about #education .body .period .years .to{position:relative;text-align:left;margin-left:7ch}#about #education .body .period .years .to:before{content:"";height:.2em;width:3ch;position:absolute;left:-5ch;top:calc(50% - .1em);background-color:#6002ed}#about #education .body .period .activity{padding:.5em 0 0 5ch;line-height:1.5em}#about #professional .body{margin:1em 0}#about #professional .body .period:first-child{position:relative;margin-bottom:1em}#about #professional .body .period:first-child:before{content:"";position:absolute;left:0;top:.5em;background-color:#6002ed}#about #professional .body .period:last-child{position:relative}#about #professional .body .period:last-child:before{content:"";position:absolute;left:0;background-color:#6002ed}#about #professional .body .period:not(:first-child,:last-child){position:relative;margin-bottom:1em}#about #professional .body .period:not(:first-child,:last-child):before{content:"";width:.2em;height:calc(100% + 1em);position:absolute;left:0;top:0;background-color:#6002ed}#about #professional .body .period .years>*{display:inline-block;width:13ch}#about #professional .body .period .years .from{position:relative;margin:0 0 0 5ch}#about #professional .body .period .years .from:before{content:"";height:.2em;width:3ch;position:absolute;left:-5ch;top:calc(50% - .1em);background-color:#6002ed}#about #professional .body .period .years .to{position:relative;text-align:left;margin-left:5ch}#about #professional .body .period .years .to:before{content:"";height:.2em;width:3ch;position:absolute;left:-5ch;top:calc(50% - .1em);background-color:#6002ed}#about #professional .body .period .activity{padding:.5em 0 0 5ch}#about #professional .body .period .activity strong{line-height:2em}#about #professional .body .period .activity ul{list-style:disc}#about #professional .body .period .activity ul li{line-height:1.5em}#about #skills .body{margin:1em 0}#about #skills .body>*{margin-bottom:1em}#about #skills .body .languages ul{display:flex;flex-direction:column;gap:.7em;padding:0 0 0 5ch;width:fit-content}#about #skills .body .subtitle{width:30ch;font-size:1em;position:relative;margin-left:5ch;margin-bottom:.5em}#about #skills .body .subtitle:before{content:"";height:.2em;width:3ch;position:absolute;left:-5ch;top:calc(50% - .1em);background-color:#6002ed}#about #skills .body .tech-skills .list{display:flex;flex-direction:column;gap:.7em}#about #skills .body .tech-skills .list li{display:flex;flex-direction:column;border:.1em solid hsl(264,98%,47%)}#about #skills .body .tech-skills .list li>*{padding-left:1em}#about #skills .body .tech-skills .list li .header{margin:0;padding:.5em 1em;display:flex;justify-content:space-between;cursor:pointer}#about #skills .body .tech-skills .list li .description{margin-bottom:.3em;display:none}#about #skills .body .tech-skills .list li.active .arrow{transform:rotate(180deg);transition:ease 500 transform}#about #skills .body .tech-skills .list li.active .description{display:block;padding:0 1em;line-height:1.5em}#calculator{font-family:Poppins,sans-serif;margin-top:80px}#calculator #board{background-color:#1c1c1c;width:320px;border-radius:10px;color:#fff;padding:1em;margin:0 auto}#calculator #board #screen .display{height:40px;width:100%;font-size:30px;text-align:right;padding:1em!important}#calculator #board #main-board{padding:10px}#calculator #board #main-board .row{margin-top:10px;display:flex;justify-content:space-between}#calculator #board #main-board .row .btn{cursor:pointer}#calculator #board #main-board .row .btn-wide{background-color:red;width:135px;height:60px;border-radius:2rem;color:#fff;border:none}#calculator #board #main-board #clear,#calculator #board #main-board #zero{width:135px;height:60px;border-radius:2rem;color:#fff;border:none}#calculator #board #main-board #clear{background-color:#d4d4d2;color:#000}#calculator #board #main-board #one,#calculator #board #main-board #two,#calculator #board #main-board #three,#calculator #board #main-board #four,#calculator #board #main-board #five,#calculator #board #main-board #six,#calculator #board #main-board #seven,#calculator #board #main-board #eight,#calculator #board #main-board #nine,#calculator #board #main-board #zero,#calculator #board #main-board #decimal{background-color:#505050;color:#fff;border:none}#calculator #board #main-board #equals,#calculator #board #main-board #subtract,#calculator #board #main-board #divide,#calculator #board #main-board #multiply,#calculator #board #main-board #add{background-color:#ff9500;color:#fff;border:none}#calculator #board #main-board .btn-circle{height:60px;width:60px;border-radius:50%}#home{max-width:62.5em;margin:0 auto;padding:.75em 1em 3em}#home .home-hero{min-height:min(35em,75vh);display:grid;grid-template-columns:minmax(0,1.55fr) minmax(12.5em,.75fr);align-items:center;gap:clamp(1.5em,4vw,3.5em);padding:clamp(2em,6vw,4.5em) 0}#home .eyebrow,#home .section-kicker{margin:0 0 .625em;font-size:.875em;color:#6002ed;font-weight:700;letter-spacing:.0625em;text-transform:uppercase}#home h1{margin:0;font-size:clamp(2.5em,6vw,4.5em);line-height:1}#home .hero-lead{max-width:42.5em;margin:1.375em 0 0;font-size:clamp(1.125em,2.2vw,1.625em);line-height:1.35}#home .hero-statement{max-width:38.75em;margin:.75em 0 0;font-size:1.0625em;line-height:1.6}#home .hero-actions{display:flex;flex-wrap:wrap;gap:.625em;margin-top:1.5em}#home .home-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.625em;padding:.5625em .875em;border:.0625em solid hsl(264,98%,47%);border-radius:.3125em;color:inherit;text-decoration:none;font-size:.9375em;font-weight:700;transition:transform .15s ease,background-color .15s ease,color .15s ease}#home .home-button:hover,#home .home-button:focus-visible{transform:translateY(-.125em);background:#6002ed;color:#fff}#home .home-button.primary{background:#6002ed;color:#fff}#home .home-portrait{width:min(100%,15em);aspect-ratio:1;justify-self:center;border-radius:50%;background:url(/home-img.png) center/cover;box-shadow:0 .75em 2.25em #00000038}#home .home-content{display:grid;gap:clamp(3em,6vw,4.5em)}#home .home-content>section{max-width:47.5em}#home .home-content h2{margin:0 0 .875em;font-size:clamp(1.625em,3vw,2.5em);line-height:1.15}#home .home-content p,#home .home-content li{font-size:clamp(1em,1.5vw,1.125em);line-height:1.7}#home .home-content p+p{margin-top:.875em}#home .featured-project{max-width:none;display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(1.5em,4vw,3em);padding:clamp(1.25em,3vw,2.25em);border-left:.25em solid hsl(264,98%,47%);background:#7f7f7f14}#home .capability-list{margin:0;padding-left:1.25em}#home .capability-list li+li{margin-top:.625em}#home .text-link{color:inherit;font-weight:700;text-decoration-color:#6002ed;text-decoration-thickness:.125em;text-underline-offset:.1875em}#home .opportunities ul{display:flex;flex-wrap:wrap;gap:.5em;margin:1em 0;padding:0;list-style:none}#home .opportunities ul li{padding:.375em .625em;border:.0625em solid hsl(264,98%,47%);border-radius:62.4375em;font-size:.9375em}@media(max-width:48em){#home .home-hero{min-height:auto;grid-template-columns:1fr}#home .home-portrait{width:10em;grid-row:1}#home .featured-project{grid-template-columns:1fr}}#randomQuote{font-family:Poppins,sans-serif;color:#fff;width:100%;height:100vh;background-color:#282c34;transition:background-color 1s ease-in-out;display:flex;justify-content:center;padding:0 .75em;align-items:center}.quote-box{display:flex;justify-content:center;align-items:center;flex-direction:column;font-size:1.61rem;font-weight:500;border-radius:.6rem;padding:1em;border:.05em solid white}@media only screen and (min-width:30em){.quote-box{max-width:18.75em}}.quote-box .quote-text{text-align:center;transition:all .6s ease}.quote-box .quote-author{width:100%;height:40px;position:relative;transition:all .6s ease;margin:.7rem 0 1rem}.quote-box .quote-author span{position:absolute;right:0;font-size:1rem}.quote-box .quote-footer{display:flex;justify-content:space-between;height:40px;width:100%}.quote-box .quote-footer .icons{height:100%;display:flex;align-items:center;border:none;font-size:.7em}.quote-box .quote-footer .icons a{height:100%;margin:0 10px 0 0;color:#fff;cursor:pointer}.quote-box .quote-footer .icons a svg{height:100%;width:40px;border:1px solid white;border-radius:3px;background-color:transparent;display:flex;justify-content:center;align-items:center}.quote-box .quote-footer .icons a:hover{opacity:.8}.quote-box .quote-footer button{background-color:transparent;height:40px;width:120px;font-size:.6em;cursor:pointer;padding:1rem;border-radius:5px;outline:none;color:#fff;display:flex;align-items:center;justify-content:center;border:1px solid white}.quote-box .quote-footer button:hover{opacity:.8}@media only screen and (min-width:30em){#work .filters,#work h2,#work .work-list{padding:0}}#work .filters{margin-bottom:1.25em;width:100%}#work .filters>*{margin-bottom:1em}#work .filters.close{transform:scale(0)}#work .filters .filter-list{font-size:.7em;display:grid;grid-template-columns:repeat(auto-fit,minmax(8em,1fr))}#work .filters .filter-list li{display:flex;justify-content:center;align-items:center;border-radius:.4em;border:.1em solid hsl(264,98%,47%);padding:.3em;margin:.2em;cursor:pointer}#work .filters .filter-list .active{color:#fff;background-color:#6002ed}#work .work-list .list-item{margin:0 1em 1em 0;padding:1em;display:inline-block;width:fit-content;color:inherit;border-bottom:.1em solid hsl(264,98%,47%);border-left:.1em solid hsl(264,98%,47%)}#work .work-list .list-item .disabled{display:none}.launch-enter{opacity:0;transform:translate(-100%)}.launch-enter-active{opacity:1;transform:translate(0);transition:opacity .5s,transform .5s}.launch-exit{opacity:1}.launch-exit-active{opacity:0;transform:translate(100%);transition:opacity .5s,transform .5s}#sign{background-color:#282c34}#sign .message{font-size:1em}#sign h3{text-align:center;color:gray}#sign .header{margin-bottom:1em}#sign .header section{display:flex;justify-content:center}#sign .header .mode{padding:.2em .3em;width:max-content;border-bottom:.1em solid hsl(264,98%,47%)}#sign .switch{padding:.2em .3em;width:max-content;cursor:pointer}#sign .page-container{height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0 px-to-em(20px)}#sign .body{max-width:428px;width:100%;display:flex;flex-direction:column;border:.05em solid getPriVariant(700);border-radius:6px;padding:1em .5em}#sign .body section{margin-bottom:1em}#sign .body .form-group{display:flex;justify-content:center;margin-bottom:1em}#sign .submit{color:#fff;display:flex;justify-content:center}#sign .submit .submit-btn{cursor:pointer;padding:.3em;border-radius:2px;border:.05em solid gray;color:#6002ed}@media only screen and (min-width:30em){#sign .submit .submit-btn:hover{border:none;color:#fff;background-color:#6002ed}}#sign label{display:flex;justify-content:center;align-items:center}#sign input{background:transparent;display:block;padding:.25rem 1rem;border:0;border-bottom:1px solid gray;outline:0}#sign input:focus{color:#6002ed;border-bottom:2px solid hsl(264,98%,47%)}#contact textarea{color:inherit;resize:none;overflow:hidden;border:none;outline:none;background:transparent;width:100%;padding:.5em .5em 0;margin-bottom:.5em;font-size:1.3em;border-left:.1em solid hsl(264,98%,47%)}#contact h2{margin-bottom:1.5em}#contact h3{margin-bottom:.5em}#contact button{border:none;padding:.5em 1em;color:#6002ed}#contact section{border:1px solid hsl(264,98%,47%);margin-bottom:1em;padding:2em}#contact section p{margin-bottom:1em}#timer{font-family:Poppins,sans-serif;color:#fff;width:100%;height:100vh;display:flex;flex-direction:column;padding:px-to-em(60px) px-to-em(23px);justify-content:center;background-color:#282c34}#timer h1,#timer h2,#timer h3{text-align:center}#timer h1{margin-bottom:2em}#timer h2{margin:0}#timer h3{font-size:1.2em}#timer span{cursor:pointer}#timer em{font-size:2em}#timer .body .setting{float:left;width:50%}#timer .body .setting h3{font-size:1.3em;padding:.5em}#timer .body .setting-footer{display:flex;justify-content:center}#timer .body .setting-footer .sign{color:#6002ed;display:flex;justify-content:center;font-size:1.9em;font-weight:800}#timer .body .setting-footer .value{display:flex;justify-content:center;align-items:center}#timer .body .setting-footer span{height:50px;width:50px}#timer .body .display{border-bottom:.1em solid hsl(264,98%,47%)}#timer .body .display-footer{height:50px;display:flex;justify-content:center}#timer .body .display-footer span{font-weight:600;font-size:1.5em;margin:0 1em;display:flex;justify-content:center;align-items:center;height:50px;width:50px}#timer .body .display-footer .reset{color:red}#timer .body .display .screen{text-align:center;font-size:6.2em}#timestamp .api{font-family:Montserrat,sans-serif;min-height:100vh;margin:0 auto}.api-container header{margin-bottom:3rem;padding-bottom:2rem;border-bottom:2px solid rgba(37.788%,.94%,93.06%,.2)}.api-container header h1{font-size:2.5rem;margin-bottom:.5rem;color:#6002ed}.api-container header .subtitle{font-size:1.1rem;color:#6002edb3;font-weight:300}.api-container section{margin-bottom:2.5rem;padding:px-to-em(12px);border-radius:8px;background-color:#6002ed08}.api-container section h2{font-size:1.8rem;margin-bottom:1rem;color:#6002ed;border-bottom:2px solid rgba(37.788%,.94%,93.06%,.2);padding-bottom:.5rem}.api-container section p{line-height:1.6;margin-bottom:.5rem}.api-container .about p{font-size:1.05rem}.api-container .endpoints table{border:0;width:100%}.api-container .endpoints table thead{display:none;background-color:#6002ed1a}.api-container .endpoints table thead th{padding:1rem;text-align:left;font-weight:600;border:1px solid rgba(37.788%,.94%,93.06%,.2)}.api-container .endpoints table tbody tr{display:block;margin-bottom:1.5rem;border:1px solid rgba(37.788%,.94%,93.06%,.2);border-radius:8px}.api-container .endpoints table tbody tr:last-child{margin-bottom:0}.api-container .endpoints table tbody tr:nth-child(2n){background-color:#6002ed05}.api-container .endpoints table tbody tr td{border-top-left-radius:8px;border-top-right-radius:8px}.api-container .endpoints table tbody tr td code:first-of-type{background-color:transparent}.api-container .endpoints table tbody tr td:first-child{background-color:#6002ed33}.api-container .endpoints table tbody tr td{padding:1rem;border:1px solid rgba(37.788%,.94%,93.06%,.2);vertical-align:top;display:flex;align-items:center;border:none;border-bottom:1px solid rgba(37.788%,.94%,93.06%,.1);padding:.75rem .5rem}.api-container .endpoints table tbody tr td:last-child{border-bottom:none}.api-container .endpoints table tbody tr td:before{content:attr(data-label);font-weight:600;color:#6002ed}.api-container .endpoints table tbody tr td code{width:100%;background-color:#6002ed1a;border-radius:4px;font-family:Courier New,monospace;font-size:.9rem;white-space:nowrap}.api-container .usage ul{list-style:none;padding:0}.api-container .usage ul li{margin-bottom:.8rem;padding-left:1.5rem;position:relative}.api-container .usage ul li:before{content:"→";position:absolute;left:0;color:#6002ed;font-weight:700}.api-container .usage ul li code{background-color:#6002ed1a;padding:.4rem .8rem;border-radius:4px;font-family:Courier New,monospace;display:inline-block}.api-container .example-output pre{background-color:#1e1e1e;color:#d4d4d4;padding:1.5rem;border-radius:6px;overflow-x:auto;margin:1rem 0}.api-container .example-output pre code{font-family:Courier New,monospace;font-size:.95rem;line-height:1.5}.api-container .example-output .error-example{margin-top:1.5rem;font-weight:600;color:#ff6b6b}.api-container .try-it{background-color:#6002ed14}.api-container .try-it form{margin-bottom:1rem}.api-container .try-it form .form-group{display:flex;flex-direction:column;gap:.8rem}.api-container .try-it form .form-group label{font-weight:600;color:#6002ed}.api-container .try-it form .form-group input{padding:.8rem;border:2px solid rgba(37.788%,.94%,93.06%,.3);border-radius:6px;font-size:1rem;font-family:Courier New,monospace;transition:border-color .3s}.api-container .try-it form .form-group input:focus{outline:none;border-color:#6002ed}.api-container .try-it form .form-group input::placeholder{color:#6002ed66}.api-container .try-it form .form-group button{padding:.8rem 1.5rem;background-color:#6002ed;color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.api-container .try-it form .form-group button:hover:not(:disabled){background-color:#4c02bb;transform:translateY(-2px);box-shadow:0 4px 8px #6002ed4d}.api-container .try-it form .form-group button:disabled{opacity:.6;cursor:not-allowed}.api-container .try-it>button{padding:.8rem 1.5rem;background-color:transparent;color:#6002ed;border:2px solid hsl(264,98%,47%);border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.api-container .try-it>button:hover:not(:disabled){background-color:#6002ed;color:#fff;transform:translateY(-2px);box-shadow:0 4px 8px #6002ed4d}.api-container .try-it>button:disabled{opacity:.6;cursor:not-allowed}.api-container .api-response{background-color:#6002ed0d;border-left:4px solid hsl(264,98%,47%)}.api-container .api-response pre{background-color:#1e1e1e;color:#d4d4d4;padding:1.5rem;border-radius:6px;overflow-x:auto;margin-top:1rem}.api-container .api-response pre code{font-family:Courier New,monospace;font-size:.95rem;line-height:1.5}.api-container .api-response .error pre{border-left:4px solid #ff6b6b}.api-container .api-response .error pre code{color:#ff6b6b}.api-container .how-to-use pre{background-color:#1e1e1e;color:#d4d4d4;padding:1.5rem;border-radius:6px;overflow-x:auto}.api-container .how-to-use pre code{font-family:Courier New,monospace;font-size:.95rem;line-height:1.8}.api-container .feedback{background-color:#6002ed0d;border-radius:8px;text-align:center}.api-container .feedback p{font-size:1rem;line-height:1.6}.api-container .feedback p strong{color:#6002ed}@media only screen and (min-width:30em){.api-container header{text-align:center}.api-container header h1{font-size:2rem}.api-container header .subtitle{font-size:1rem}.api-container section{padding:1rem}.api-container section h2{font-size:1.5rem}.api-container .endpoints table{width:100%;border-collapse:collapse;margin-top:1rem}.api-container .endpoints table thead th{padding:1rem;text-align:left;font-weight:600}.api-container .endpoints table tbody tr{padding:0}.api-container .endpoints table tbody tr td{padding:1rem;border:0;vertical-align:top}.api-container .endpoints table tbody tr td:first-child{border-top-left-radius:8px;border-top-right-radius:8px;border-bottom-left-radius:0;background-color:#6002ed33}.api-container .endpoints table tbody tr td code{padding:.3rem .6rem;border-radius:4px;font-family:Courier New,monospace;font-size:.9rem;white-space:nowrap}.api-container .try-it .form-group button{width:100%}.api-container .try-it>button{width:100%;margin-top:.5rem}}#admin{width:100%;min-height:100vh;box-sizing:border-box;font-family:Montserrat,sans-serif;color:#6002ed}#admin h1,#admin h2,#admin h3,#admin h4,#admin p{margin-top:0}#admin h1,#admin h2,#admin h3,#admin h4{color:#6002ed}#admin p{line-height:1.6}#admin button{width:auto;padding:.7rem 1.1rem;border:2px solid hsl(264,98%,47%);border-radius:6px;background:#6002ed;color:#fff;font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:background-color .25s ease,color .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease}#admin button:hover{background:#4c02bb;border-color:#4c02bb;transform:translateY(-1px);box-shadow:0 4px 10px #6002ed33}#admin>header{margin-bottom:2.5rem}#admin>header h1{margin-bottom:.5rem;font-size:2.5rem;line-height:1.2}#admin>header p{max-width:700px;margin-bottom:0;color:#6002eda6;font-size:1rem}#admin>.admin-loading{margin-bottom:2rem;padding:1rem;border-radius:8px;border:1px solid rgba(37.788%,.94%,93.06%,.12);background:#6002ed0a;color:#6002edb3;font-size:.85rem}#admin>section{margin-bottom:2.5rem}#admin .admin-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem}#admin .admin-section-header h2,#admin .admin-section-header h3,#admin .admin-section-header h4{margin-bottom:.35rem}#admin .admin-section-header p{margin-bottom:0;color:#6002ed99;font-size:.9rem}#admin .admin-section-header button{flex-shrink:0}#admin .admin-eyebrow{display:block;margin-bottom:.35rem;color:#6002ed80;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}#admin #summary{padding:1.5rem;border-left:4px solid hsl(264,98%,47%);border-radius:10px;background:#6002ed08}#admin #summary>h2{margin-bottom:1.5rem;font-size:1.6rem}#admin #summary .admin-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem}#admin #summary .summary-card{display:flex;flex-direction:column;justify-content:center;min-height:100px;padding:1.25rem;box-sizing:border-box;border:1px solid rgba(37.788%,.94%,93.06%,.12);border-radius:8px;background:#6002ed08;transition:transform .25s ease,background-color .25s ease,border-color .25s ease}#admin #summary .summary-card:hover{transform:translateY(-2px);background:#6002ed0f;border-color:#6002ed40}#admin #summary .summary-card strong{margin-bottom:.4rem;color:#6002ed;font-size:2rem;line-height:1}#admin #summary .summary-card span{color:#6002eda6;font-size:.85rem;font-weight:600}#admin #projects-admin .admin-section-header{padding-bottom:1rem;border-bottom:2px solid rgba(37.788%,.94%,93.06%,.12)}#admin #projects-admin .admin-section-header h2{font-size:1.8rem}#admin #projects-admin .project-list{display:grid;gap:1rem}#admin #projects-admin article.project-admin-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;padding:1.5rem;border:1px solid rgba(37.788%,.94%,93.06%,.12);border-radius:10px;background:#6002ed06;transition:border-color .25s ease,background-color .25s ease,box-shadow .25s ease}#admin #projects-admin article.project-admin-card:hover,#admin #projects-admin article.project-admin-card.active{border-color:#6002ed4d;background:#6002ed0d}#admin #projects-admin article.project-admin-card.active{box-shadow:0 0 0 2px #6002ed14}#admin #projects-admin .project-admin-info{min-width:0;flex:1}#admin #projects-admin .project-admin-info h3{margin-bottom:.5rem;font-size:1.25rem}#admin #projects-admin .project-admin-info>p{margin-bottom:1rem;color:#6002eda6}#admin #projects-admin .project-meta,#admin #projects-admin .project-tech{display:flex;flex-wrap:wrap;gap:.5rem}#admin #projects-admin .project-meta{margin-bottom:.75rem}#admin #projects-admin .project-meta span{padding:.3rem .65rem;border-radius:999px;background:#6002ed14;color:#6002ed;font-size:.7rem;font-weight:700;text-transform:uppercase}#admin #projects-admin .project-tech span{padding:.3rem .6rem;border-radius:4px;background:#6002ed0d;color:#6002edb3;font-size:.75rem}#admin #projects-admin .project-admin-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}#admin #projects-admin .project-admin-actions button{padding:.55rem .8rem;background:transparent;color:#6002ed;border-width:1px;font-size:.75rem}#admin #projects-admin .project-admin-actions button:hover{background:#6002ed;color:#fff}#admin #project-manager{padding:1.5rem;border:1px solid rgba(37.788%,.94%,93.06%,.12);border-radius:10px;background:#6002ed06}#admin #project-manager .project-manager-content{width:100%}#admin #project-manager .project-manager-header{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;padding-bottom:1.5rem;margin-bottom:1.5rem;border-bottom:2px solid rgba(37.788%,.94%,93.06%,.12)}#admin #project-manager .project-manager-header>div:first-child{min-width:0;flex:1}#admin #project-manager .project-manager-header h3{margin-bottom:.5rem;color:#6002ed;font-size:1.8rem;line-height:1.2}#admin #project-manager .project-manager-header p{max-width:800px;margin-bottom:0;color:#6002eda6;font-size:.9rem}#admin #project-manager .project-manager-status{flex-shrink:0}#admin #project-manager .project-manager-status span{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:.4rem .8rem;border:1px solid rgba(37.788%,.94%,93.06%,.2);border-radius:999px;background:#6002ed0f;color:#6002ed;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}#admin #project-manager .project-progress{padding:1.25rem;margin-bottom:1.5rem;border:1px solid rgba(37.788%,.94%,93.06%,.1);border-radius:8px;background:#6002ed06}#admin #project-manager .project-progress-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}#admin #project-manager .project-progress-header>div{display:flex;flex-direction:column;gap:.25rem}#admin #project-manager .project-progress-header strong{color:#6002ed;font-size:.9rem}#admin #project-manager .project-progress-header span{color:#6002ed8c;font-size:.75rem}#admin #project-manager .project-progress-header>strong{font-size:1.1rem}#admin #project-manager .progress-bar{width:100%;height:8px;overflow:hidden;border-radius:999px;background:#6002ed1a}#admin #project-manager .progress-bar-fill{height:100%;border-radius:inherit;background:#6002ed;transition:width .4s ease}#admin #project-manager .requirement-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:2rem}#admin #project-manager .requirement-summary>div{display:flex;flex-direction:column;justify-content:center;padding:1.25rem;border:1px solid rgba(37.788%,.94%,93.06%,.1);border-radius:8px;background:#6002ed06}#admin #project-manager .requirement-summary strong{margin-bottom:.35rem;color:#6002ed;font-size:1.5rem;line-height:1}#admin #project-manager .requirement-summary span{color:#6002ed99;font-size:.75rem;font-weight:600}#admin #project-manager .project-requirements{margin-top:2rem}#admin #project-manager .project-requirements>.admin-section-header{padding-bottom:1rem;margin-bottom:1rem;border-bottom:2px solid rgba(37.788%,.94%,93.06%,.12)}#admin #project-manager .project-requirements>.admin-section-header h3{font-size:1.4rem}#admin .requirement-list{display:grid;gap:.75rem}#admin .requirement-card{padding:1rem;border:1px solid rgba(37.788%,.94%,93.06%,.12);border-radius:8px;background:#6002ed05}#admin .requirement-header{display:flex;align-items:center;justify-content:space-between;width:100%;gap:1rem}#admin .requirement-toggle{display:flex;align-items:center;flex:1;gap:.75rem;padding:0;border:0;background:transparent;color:inherit;text-align:left;box-shadow:none}#admin .requirement-toggle:hover{background:transparent;color:inherit;transform:none;box-shadow:none}#admin .requirement-toggle>span{width:1rem;color:#6002ed;font-size:1.1rem}#admin .requirement-toggle>div{display:flex;flex-direction:column;gap:.25rem}#admin .requirement-toggle strong{color:#6002ed;font-size:.95rem}#admin .requirement-toggle small{color:#6002ed80;font-size:.7rem;font-weight:600}#admin .requirement-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}#admin .requirement-actions span{color:#6002ed;font-size:.8rem;font-weight:700}#admin .requirement-actions button{padding:.55rem .8rem;border-width:1px;background:transparent;color:#6002ed;font-size:.75rem}#admin .requirement-actions button:hover{background:#6002ed;color:#fff}#admin .requirement-progress{height:5px;margin-top:.8rem;overflow:hidden;border-radius:999px;background:#6002ed14}#admin .requirement-progress-bar{height:100%;border-radius:inherit;background:#6002ed;transition:width .3s ease}#admin .requirement-description{margin:.9rem 0 0;color:#6002ed99;font-size:.85rem;line-height:1.5}#admin .requirement-todos{margin-top:1rem;padding:1rem;border-radius:8px;background:#6002ed06}#admin .requirement-todos .admin-section-header{margin-bottom:1rem}#admin .requirement-todos .admin-section-header h4{font-size:1rem}#admin .requirement-todo-content{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:1.5rem;align-items:start}#admin .requirement-todo-list{display:grid;gap:.6rem;padding:0;margin:0;list-style:none}#admin .todo-admin-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem;border:1px solid rgba(37.788%,.94%,93.06%,.1);border-radius:6px;background:#6002ed05}#admin .todo-admin-info{min-width:0;flex:1}#admin .todo-admin-info .todo-status{display:inline-block;margin-right:.6rem;color:#6002ed;font-size:.65rem;font-weight:700;text-transform:uppercase}#admin .todo-admin-info strong{color:#6002ed;font-size:.85rem}#admin .todo-admin-info p{margin:.35rem 0 0;color:#6002ed8c;font-size:.75rem}#admin .todo-admin-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}#admin .todo-admin-actions button{padding:.55rem .8rem;border-width:1px;background:transparent;color:#6002ed;font-size:.75rem}#admin .todo-admin-actions button:hover{background:#6002ed;color:#fff}#admin .project-form,#admin .requirement-form,#admin .todo-form{width:100%;display:grid;gap:1rem;margin-bottom:1.5rem;padding:1.5rem;box-sizing:border-box;border-left:4px solid hsl(264,98%,47%);border-radius:8px;background:#6002ed0a}#admin .form-group{display:flex;flex-direction:column;gap:.45rem}#admin .form-group label{color:#6002ed;font-size:.85rem;font-weight:600}#admin .form-group input,#admin .form-group select,#admin .form-group textarea{width:100%;box-sizing:border-box;padding:.75rem;border:1px solid rgba(37.788%,.94%,93.06%,.2);border-radius:6px;outline:none;background:transparent;color:inherit;font-family:inherit;font-size:.9rem;transition:border-color .2s ease}#admin .form-group input:focus,#admin .form-group select:focus,#admin .form-group textarea:focus{border-color:#6002ed}#admin .form-group textarea{min-height:80px;resize:vertical}#admin .form-group small{color:#6002ed80;font-size:.75rem}#admin .form-group.checkbox{flex-direction:row;align-items:center}#admin .form-group.checkbox label{display:flex;align-items:center;gap:.5rem;cursor:pointer}#admin .form-group.checkbox input{width:auto}#admin .btn-group{display:flex;gap:.75rem;margin-top:.5rem}#admin .btn-group button:first-child{background:transparent;color:#6002ed}#admin .btn-group button:first-child:hover{background:#6002ed;color:#fff}#admin .admin-empty-state{padding:2.5rem 1.5rem;border:1px dashed rgba(37.788%,.94%,93.06%,.2);border-radius:8px;background:#6002ed05;text-align:center}#admin .admin-empty-state h3,#admin .admin-empty-state h4{margin-bottom:.5rem}#admin .admin-empty-state p{margin-bottom:0;color:#6002ed99;font-size:.85rem}#admin .admin-empty-state button{margin-top:1rem}@media only screen and (min-width:30em){#admin{padding:1.25rem}#admin>header h1{font-size:2rem}#admin #summary{padding:1rem}#admin #summary .admin-summary{grid-template-columns:repeat(2,minmax(0,1fr))}#admin .admin-section-header{flex-direction:column;align-items:stretch}#admin .admin-section-header button{width:100%}#admin #projects-admin article.project-admin-card{flex-direction:column;padding:1rem}#admin #projects-admin .project-admin-actions{width:100%}#admin #projects-admin .project-admin-actions button{flex:1}#admin #project-manager{padding:1rem}#admin #project-manager .project-manager-header{flex-direction:column;gap:1rem}#admin #project-manager .project-manager-header h3{font-size:1.5rem}#admin #project-manager .project-manager-status{width:100%}#admin #project-manager .project-manager-status span{width:100%;box-sizing:border-box}#admin #project-manager .project-progress{padding:1rem}#admin #project-manager .project-progress-header{align-items:flex-start}#admin #project-manager .project-progress-header>strong{font-size:1rem}#admin #project-manager .requirement-summary{grid-template-columns:repeat(2,minmax(0,1fr))}#admin #project-manager .requirement-summary>div:last-child{grid-column:1/-1}#admin .requirement-todo-content{grid-template-columns:1fr}#admin .requirement-todo-content .todo-form{position:static}#admin .requirement-header{align-items:flex-start}#admin .requirement-actions{flex-wrap:wrap;justify-content:flex-end}#admin .requirement-actions span{width:100%;text-align:right}#admin .todo-admin-item{align-items:flex-start;flex-direction:column}#admin .todo-admin-actions{width:100%}#admin .todo-admin-actions button{flex:1}#admin .btn-group{flex-direction:column}#admin .btn-group button{width:100%}}.markdownPreviewer header{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:2px solid rgba(37.788%,.94%,93.06%,.2)}.markdownPreviewer header h1{font-size:2.5rem;margin-bottom:.5rem;color:#6002ed}.markdownPreviewer header .subtitle{font-size:1.1rem;color:#6002edb3;font-weight:300}.markdownPreviewer h3{margin-bottom:1rem;color:#6002ed}.markdownPreviewer section{margin-bottom:2.5rem;padding:px-to-em(12px);border-radius:8px;background-color:#6002ed08}.markdownPreviewer section h2{font-size:1.8rem;margin-bottom:1rem;color:#6002ed;border-bottom:2px solid rgba(37.788%,.94%,93.06%,.2);padding-bottom:.5rem}.markdownPreviewer section p{line-height:1.6;margin-bottom:.5rem}.markdownPreviewer .try-it{background-color:#6002ed14;border:1px solid rgba(37.788%,.94%,93.06%,.3);display:flex;flex-direction:column}.markdownPreviewer .try-it .editor-section{margin-bottom:1em}.markdownPreviewer .try-it .editor-section textarea{width:100%;max-width:100%;min-height:150px;height:100%}.markdownPreviewer .try-it .preview .api-response{box-sizing:border-box;width:100%;max-width:100%;min-height:150px;word-wrap:break-word;overflow-wrap:break-word;padding:5px}.markdownPreviewer .try-it .preview h3{margin-bottom:1rem;color:#6002ed;border-bottom:2px solid rgba(37.788%,.94%,93.06%,.2)}.project-heading{padding:.375em}.home-btn{height:4ch;min-height:fit-content;display:flex;padding:0 .375em;margin-bottom:1.25em}.backHome-btn{padding:.5em;color:inherit;border:1px solid hsl(264,98%,47%);border-radius:6px;cursor:pointer}#dataviz-home .list-item{margin:0 1em 1em 0;padding:1em;display:inline-block;width:fit-content;color:inherit;border-bottom:.1em solid hsl(264,98%,47%);border-left:.1em solid hsl(264,98%,47%)}#dataviz{font-family:Poppins,sans-serif;max-width:100%;width:100%;height:100%}#dataviz .home-btn{padding:0 px-to-em(12px)}#dataviz h1{margin-top:1em;margin-bottom:.5em;padding-left:px-to-em(6px)}#dataviz .dataviz{margin-top:1em}#dataviz .header{background-color:inherit;color:inherit}#dataviz .header h4{font-size:1.5em;text-align:center}#dataviz .header h6{text-align:center}#dataviz .header ul{display:flex;justify-content:center;padding:1em}#dataviz .header ul li{padding:1em;border:1px solid gray;margin:0 .5em;border-radius:5px;cursor:pointer}#dataviz .header ul li a{color:inherit}#header-parser,#url-shortener{font-family:Montserrat,sans-serif;min-height:100%;margin:0 auto}#file-metadata{font-family:Montserrat,sans-serif;min-height:100vh;max-width:1200px;margin:0 auto}#exercise-tracker{font-family:Montserrat,sans-serif;padding:px-to-em(40px) px-to-em(23px);min-height:100vh;max-width:1200px;margin:0 auto}#exercise-tracker .container header{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:2px solid rgba(37.788%,.94%,93.06%,.2)}#exercise-tracker .container header h1{font-size:2.5rem;margin-bottom:.5rem;color:#6002ed}#exercise-tracker .container header .subtitle{font-size:1.1rem;color:#6002edb3;font-weight:300}#exercise-tracker .container section{margin-bottom:2.5rem;padding:1.5rem;border-radius:8px;background-color:#6002ed08}#exercise-tracker .container section h2{font-size:1.8rem;margin-bottom:1rem;color:#6002ed;border-bottom:2px solid rgba(37.788%,.94%,93.06%,.2);padding-bottom:.5rem}#exercise-tracker .container .endpoints table{width:100%;border-collapse:collapse;margin-top:1rem}#exercise-tracker .container .endpoints table thead{background-color:#6002ed1a}#exercise-tracker .container .endpoints table thead th{padding:1rem;text-align:left;font-weight:600;border:1px solid rgba(37.788%,.94%,93.06%,.2)}#exercise-tracker .container .endpoints table tbody tr:nth-child(2n){background-color:#6002ed05}#exercise-tracker .container .endpoints table tbody tr td{padding:1rem;border:1px solid rgba(37.788%,.94%,93.06%,.2);vertical-align:top}#exercise-tracker .container .endpoints table tbody tr td code{background-color:#6002ed1a;padding:.3rem .6rem;border-radius:4px;font-family:Courier New,monospace;font-size:.9rem}#exercise-tracker .container .try-it{background-color:#6002ed14}#exercise-tracker .container .try-it form .form-group{display:flex;flex-direction:column}#exercise-tracker .container .try-it form .form-group label{margin-bottom:.5rem;margin-top:.5rem;font-weight:600;color:#6002ed}#exercise-tracker .container .try-it form .form-group input,#exercise-tracker .container .try-it form .form-group select{padding:.8rem;border:2px solid rgba(37.788%,.94%,93.06%,.3);border-radius:5px;font-size:1rem;margin-bottom:.5rem;transition:border-color .3s ease}#exercise-tracker .container .try-it form .form-group input:focus,#exercise-tracker .container .try-it form .form-group select:focus{outline:none;border-color:#6002ed}#exercise-tracker .container .try-it form .form-group button{background-color:#6002ed;color:#fff;border:none;padding:.8rem 1.5rem;font-size:1rem;border-radius:5px;cursor:pointer;margin-top:1rem;transition:all .3s ease}#exercise-tracker .container .try-it form .form-group button:hover:not(:disabled){background-color:#4c02bb;transform:translateY(-2px)}#exercise-tracker .container .try-it form .form-group button:disabled{opacity:.6;cursor:not-allowed}#exercise-tracker .container .users-list .user-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;margin-top:1rem}#exercise-tracker .container .users-list .user-cards .user-card{padding:1rem;background-color:#6002ed14;border-radius:8px;border:2px solid rgba(37.788%,.94%,93.06%,.2);transition:all .3s ease}#exercise-tracker .container .users-list .user-cards .user-card:hover{transform:translateY(-3px);box-shadow:0 4px 12px #6002ed33}#exercise-tracker .container .users-list .user-cards .user-card p{margin-bottom:.5rem}#exercise-tracker .container .users-list .user-cards .user-card .user-id{font-size:.85rem;color:#6002edb3;font-family:Courier New,monospace;word-break:break-all}#exercise-tracker .container .users-list .user-cards .user-card button{background-color:#6002ed;color:#fff;border:none;padding:.5rem 1rem;font-size:.9rem;border-radius:5px;cursor:pointer;width:100%;margin-top:.5rem;transition:all .3s ease}#exercise-tracker .container .users-list .user-cards .user-card button:hover{background-color:#4c02bb}#exercise-tracker .container .exercise-logs{background-color:#6002ed0d;border-left:4px solid hsl(264,98%,47%)}#exercise-tracker .container .exercise-logs .log-list{display:grid;gap:1rem;margin-top:1rem}#exercise-tracker .container .exercise-logs .log-list .log-item{padding:1rem;background-color:#6002ed14;border-radius:8px;border:1px solid rgba(37.788%,.94%,93.06%,.2)}#exercise-tracker .container .exercise-logs .log-list .log-item p{margin-bottom:.3rem}#exercise-tracker .container .exercise-logs .log-list .log-item p strong{color:#6002ed}#exercise-tracker .container .api-response{background-color:#6002ed0d;border-left:4px solid hsl(264,98%,47%)}#exercise-tracker .container .api-response pre{background-color:#1e1e1e;color:#d4d4d4;padding:1.5rem;border-radius:6px;overflow-x:auto;margin-top:1rem}#exercise-tracker .container .api-response pre code{font-family:Courier New,monospace;font-size:.95rem;line-height:1.5}#exercise-tracker .container .feedback{background-color:#6002ed0d;border-radius:8px;text-align:center}#exercise-tracker .container .feedback p{font-size:1rem;line-height:1.6}#exercise-tracker .container .feedback p strong{color:#6002ed}#todo-manager{font-family:Montserrat,sans-serif;min-height:100vh;margin:0 auto}.privacy-page{padding:.75em!important}.privacy-page h2{padding:.2em}.privacy-page .privacy-settings{display:flex;justify-content:space-between;align-items:center}.privacy-page .privacy-settings .privacy-settings-button{border-radius:.4em;background-color:#6002ed;color:#fff;padding:.7em;cursor:pointer}.privacy-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999998;display:flex;align-items:center;justify-content:center;background:#0000008c}.privacy-popup{position:relative;z-index:999999;width:min(90%,700px);height:80%;padding:.75em;overflow-y:auto;background:#fff;border-radius:12px;color:#000;box-shadow:0 20px 60px #00000059}.privacy-actions{margin-top:1em;height:40px;display:flex;align-items:center}.privacy-actions .privacy-reject{height:100%;width:50%;align-items:center;justify-content:center;background-color:#6002ed;font-size:1.3em;display:flex;border-radius:.4em;color:#fff;cursor:pointer}.privacy-actions .privacy-accept{height:100%;width:50%;background-color:#6002ed;align-items:center;justify-content:center;font-size:1.3em;display:flex;border-radius:.4em;color:#fff;cursor:pointer}.union{min-height:100vh;font-family:Montserrat,sans-serif;color:#6002ed}.union *{box-sizing:border-box}.union .back-to-nav{position:fixed;right:2rem;bottom:2rem;padding:.75rem 1rem;border-radius:999px;cursor:pointer;text-decoration:none;background:#222;color:#fff;box-shadow:0 4px 12px #0003;transition:transform .2s ease}.union .back-to-nav:hover{transform:translateY(-3px)}#overview{padding-top:3rem;border-top:1px solid rgba(37.788%,.94%,93.06%,.15)}#overview p{font-size:1.05rem}#overview.case-study-section .content-grid{padding:0;display:flex;flex-direction:column}.union-container{width:min(1200px,100% - 3rem);margin:0 auto;padding:6rem 0 10rem}.union-hero{max-width:1000px;margin-bottom:5rem}.union-hero .project-label{margin:0 0 1.25rem;font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;opacity:.5}.union-hero h1{margin:0;font-size:clamp(4rem,10vw,8rem);line-height:.9;letter-spacing:-.07em;color:#6002ed}.union-hero .subtitle{max-width:760px;margin:2rem 0 0;font-size:clamp(1.15rem,2vw,1.5rem);font-weight:300;line-height:1.7;color:#6002edb3}.union-hero .live-version-link{display:inline-block;margin-top:1rem;color:#6002ed;font-weight:600;text-decoration-thickness:2px;text-underline-offset:.25rem}.union-hero .project-meta{margin-top:3rem;padding-top:1.5rem;border-top:1px solid rgba(37.788%,.94%,93.06%,.2);display:flex;flex-direction:column;gap:1em}.union-hero .project-details{display:flex;flex-direction:column;gap:2rem;margin:0}.union-hero .project-details>div{display:flex;flex-direction:column;gap:.45rem;min-width:0}.union-hero .project-details strong{font-size:.65rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;opacity:.5}.union-hero .project-details span{font-size:.9rem;line-height:1.5}.union-hero .stack-tags{display:flex;flex-wrap:wrap;gap:.5rem}.union-hero .stack-tags span{padding:.45rem .75rem;border:1px solid rgba(37.788%,.94%,93.06%,.2);border-radius:999px;font-size:.75rem;font-weight:500;color:#6002edbf}.case-study-nav{position:sticky;top:0;z-index:20;display:flex;gap:1rem;margin-bottom:5rem;padding:.65rem 0;overflow-x:auto;border-bottom:1px solid rgba(37.788%,.94%,93.06%,.15);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);scrollbar-width:none}.case-study-nav strong{margin-bottom:.5rem}.case-study-nav::-webkit-scrollbar{display:none}.case-study-nav a{flex-shrink:0;padding:.5rem .7rem;border-radius:4px;color:#6002ede6;text-decoration:none;font-size:.7rem;font-weight:500;white-space:nowrap;transition:color .2s ease,background-color .2s ease}.case-study-nav a:hover{color:#6002ed;background-color:#6002ed0f}#requirements.case-study-section .content-grid{padding:0;display:flex;flex-direction:column}#implementation .implementation-section,#testing .content-grid{display:flex;flex-direction:column}#decisions article{display:flex;flex-direction:column}#current .current-state,#product .product-feature{display:flex;flex-direction:column}.case-study-section{max-width:1000px;margin-bottom:10rem;scroll-margin-top:5rem}.case-study-section .section-number{display:block;margin-bottom:.75rem;font-size:.7rem;font-weight:600;letter-spacing:.12em;opacity:.4}.case-study-section h2{margin:0 0 2.5rem;font-size:clamp(2.2rem,5vw,4rem);line-height:1;letter-spacing:-.055em;color:#6002ed}.case-study-section h3{margin:3rem 0 1rem;font-size:1.35rem;line-height:1.2;letter-spacing:-.02em;color:#6002ed}.case-study-section h4{margin:0 0 .75rem;font-size:.95rem;font-weight:600}.case-study-section p{max-width:760px;margin:0 0 1.25rem;font-size:.95rem;line-height:1.85;color:#6002edb8}.case-study-section ul{margin:0;padding-left:1.1rem;color:#6002edb3}.case-study-section ul li{margin-bottom:.55rem;line-height:1.6}.motivation{max-width:1050px}.motivation>p:first-of-type{max-width:850px;font-size:clamp(1.3rem,3vw,2rem);line-height:1.5;letter-spacing:-.025em;color:#6002ed}.motivation .content-grid{display:flex;flex-direction:column;margin-top:2.5rem}.motivation .content-grid article{padding:0;background:transparent;border:none}.motivation h3{margin-top:5rem;padding-top:2rem;border-top:1px solid rgba(37.788%,.94%,93.06%,.15)}.content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:2rem}.content-grid article{padding:1.25rem;background:#6002ed0a;border:1px solid rgba(37.788%,.94%,93.06%,.1)}.content-grid article h3,.content-grid article h4{margin-top:0}.content-grid article p{margin-bottom:0;font-size:.9rem}.content-grid article ul{list-style:disc}.requirement-list{display:flex;flex-direction:column;width:100%}.requirement{width:100%;padding:1.5rem 0;border-top:1px solid rgba(37.788%,.94%,93.06%,.15)}.requirement:last-child{border-bottom:1px solid rgba(37.788%,.94%,93.06%,.15)}.requirement-header{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:0;border:none;background:transparent;color:#6002ed;text-align:left;cursor:pointer}.requirement-header:hover .requirement-title{opacity:.65}.requirement-title{display:flex;align-items:baseline;min-width:0;transition:opacity .2s ease}.requirement-number{flex-shrink:0;margin-right:.75rem;font-size:.7rem;font-weight:600;opacity:.4}.requirement-header h3{margin:0;font-size:1rem;font-weight:600;line-height:1.5}.requirement-meta{display:flex;align-items:baseline}.requirement-meta span{white-space:nowrap}.requirement-progress{display:flex;align-items:center;gap:1rem;margin-top:1rem}.progress-bar{flex:1;height:4px;overflow:hidden;background:#6002ed1a}.progress-bar-fill{height:100%;background:#6002ed;transition:width .3s ease}.requirement-progress>span{flex-shrink:0;font-size:.65rem;opacity:.5}.requirement-labels{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.requirement-label{display:inline-flex;align-items:center;padding:.3rem .55rem;border:1px solid rgba(37.788%,.94%,93.06%,.15);border-radius:999px;font-size:.65rem;font-weight:500;color:#6002eda6}.requirement-todos{margin-top:1.25rem;padding-left:1.25rem;border-left:1px solid rgba(37.788%,.94%,93.06%,.15)}.requirement-todos>p{margin:0;font-size:.8rem;opacity:.5}.requirement-todo{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid rgba(37.788%,.94%,93.06%,.08)}.requirement-todo:last-child{border-bottom:none}.requirement-todo>div:first-child{min-width:0}.todo-number{margin-right:.75rem;font-size:.65rem;opacity:.4}.todo-title{font-size:.8rem;line-height:1.5}.todo-meta{display:flex;align-items:center;justify-content:flex-end;flex-shrink:0;gap:.4rem}.todo-label{padding:.3rem .55rem;border:1px solid rgba(37.788%,.94%,93.06%,.15);border-radius:999px;font-size:.6rem;color:#6002ed99}.todo-status{font-size:.65rem;font-weight:600;text-transform:uppercase;opacity:.5}.todo-status-finished{opacity:.8}.todo-status-in-progress{opacity:.7}.todo-status-backlog{opacity:.45}.todo-status-planning{opacity:.6}.todo-status-not-in-project{opacity:.35}@media only screen and (min-width:30em){.requirement{padding:1.25rem 0}.requirement-header{align-items:flex-start;gap:.75rem}.requirement-title{align-items:flex-start}.requirement-header h3{font-size:.9rem}.requirement-meta{align-items:flex-end;gap:.25rem;font-size:.6rem}.requirement-progress{align-items:flex-start;flex-direction:column;gap:.5rem}.progress-bar{width:100%}.requirement-todos{padding-left:.75rem}.requirement-todo{align-items:flex-start;flex-direction:column;gap:.5rem}.todo-meta{justify-content:flex-start}}.architecture{max-width:1100px}.architecture .architecture-diagram{min-height:420px;margin:3rem 0;border:1px solid rgba(37.788%,.94%,93.06%,.15);border-radius:8px}.architecture.case-study-section .content-grid,#api.case-study-section .content-grid,#device.case-study-section .content-grid,#lifecycle.case-study-section .content-grid,#observability.case-study-section .content-grid,#reliability.case-study-section .content-grid,#scaling.case-study-section .content-grid{padding:0;display:flex;flex-direction:column}.stack{max-width:1100px}.stack .stack-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid rgba(37.788%,.94%,93.06%,.15)}.stack .stack-grid article{padding:1.25rem;border-right:1px solid rgba(37.788%,.94%,93.06%,.15)}.stack .stack-grid article:last-child{border-right:none}.stack .stack-grid article h3{margin:0 0 .75rem;font-size:.9rem;text-transform:uppercase;letter-spacing:.08em}.stack .stack-grid article p{margin:0;font-size:.9rem}.progress{max-width:1100px}.progress .progress-overview,.progress .progress-gantt{margin-top:3rem}.progress-overview{width:100%}.current{max-width:1100px}.current .current-state{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:3rem;border:1px solid rgba(37.788%,.94%,93.06%,.15)}.current .current-state article{padding:1.25rem;border-right:1px solid rgba(37.788%,.94%,93.06%,.15)}.current .current-state article:last-child{border-right:none}.current .current-state article>span{display:inline-block;margin-bottom:1.5rem;font-size:.65rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;opacity:.45}.current .current-state article h3{margin:0 0 .75rem}.current .current-state article p{margin:0}.product{max-width:1100px}.product .product-feature{display:grid;grid-template-columns:260px minmax(0,1fr);gap:3rem;padding:2rem 0;border-top:1px solid rgba(37.788%,.94%,93.06%,.15)}.product .product-feature:last-child{border-bottom:1px solid rgba(37.788%,.94%,93.06%,.15)}.product .product-feature h3{margin:0;font-size:1.1rem}.product .product-feature p{margin-bottom:.9rem}.product .product-feature p:last-child{margin-bottom:0}.implementation{max-width:1100px}.implementation .implementation-section{display:grid;grid-template-columns:260px minmax(0,1fr);gap:2rem;padding:3rem 0;border-top:1px solid rgba(37.788%,.94%,93.06%,.15)}.implementation .implementation-section:last-child{border-bottom:1px solid rgba(37.788%,.94%,93.06%,.15)}.implementation .implementation-section h3{margin:0;font-size:1.5rem;letter-spacing:-.03em}.implementation .implementation-section p{margin-bottom:1rem}.implementation .implementation-section p:last-child{margin-bottom:0}.testing .content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.testing .content-grid article{padding:1.25rem}.decisions{max-width:1000px}.decisions>article{display:grid;grid-template-columns:300px minmax(0,1fr);gap:2rem;padding:2rem 0;border-top:1px solid rgba(37.788%,.94%,93.06%,.15)}.decisions>article:last-child{border-bottom:1px solid rgba(37.788%,.94%,93.06%,.15)}.decisions>article h3{margin:0;font-size:1rem}.decisions>article p{margin:0}.learnings{max-width:850px;padding-top:2rem;border-top:1px solid rgba(37.788%,.94%,93.06%,.15)}.learnings p{font-size:1rem}.learnings p:last-child{font-size:1.1rem;color:#6002ed}.architecture pre,.code-example pre{margin:2rem 0;padding:1.5rem;overflow-x:auto;border-radius:6px;background-color:#1e1e1e;color:#d4d4d4}.architecture pre code,.code-example pre code{font-family:Courier New,monospace;font-size:.85rem;line-height:1.6;white-space:pre}.project-links{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.project-links a,.project-links button{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.1rem;border:1px solid hsl(264,98%,47%);border-radius:5px;background:#6002ed;color:#fff;font-size:.85rem;font-weight:600;text-decoration:none;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease}.project-links a:hover,.project-links button:hover{background:transparent;color:#6002ed;transform:translateY(-1px)}.project-links .secondary{background:transparent;color:#6002ed}.project-links .secondary:hover{background:#6002ed;color:#fff}@media only screen and (min-width:30em){.union-container{width:min(100% - 2rem,700px);padding-top:4rem;padding-bottom:6rem}.union-hero{margin-bottom:4rem}.union-hero h1{font-size:clamp(3.5rem,18vw,5rem)}.union-hero .subtitle{margin-top:1.5rem;font-size:1.05rem}.union-hero .project-meta{margin-top:2rem}.union-hero .project-details{grid-template-columns:1fr;gap:1.25rem}.case-study-nav{margin-bottom:4rem}.case-study-section{margin-bottom:7rem}.case-study-section h2{margin-bottom:2rem;font-size:2.4rem}.content-grid,.testing .content-grid{grid-template-columns:1fr}.content-grid article{border-right:none;border-bottom:1px solid rgba(37.788%,.94%,93.06%,.15)}.content-grid article:last-child{border-bottom:none}.stack .stack-grid{grid-template-columns:1fr}.stack .stack-grid article{border-right:none;border-bottom:1px solid rgba(37.788%,.94%,93.06%,.15)}.stack .stack-grid article:last-child{border-bottom:none}.current .current-state{grid-template-columns:1fr}.current .current-state article{border-right:none;border-bottom:1px solid rgba(37.788%,.94%,93.06%,.15)}.current .current-state article:last-child{border-bottom:none}.product .product-feature,.implementation .implementation-section{grid-template-columns:1fr;gap:1rem;padding:2rem 0}.decisions>article{grid-template-columns:1fr;gap:1rem;padding:2rem 0}.architecture .architecture-diagram{min-height:300px;margin:2rem 0}.architecture pre,.code-example pre{padding:1rem}.architecture pre code,.code-example pre code{font-size:.75rem}.project-links{flex-direction:column}.project-links a,.project-links button{width:100%}}#ProjectArchitecture{min-height:100vh;padding:24px 6px;height:100%;background:#fafafa}#ProjectArchitecture textarea{resize:none}#ProjectArchitecture header{margin-bottom:18px}#ProjectArchitecture header h1{margin:0 0 6px;font-size:2rem;line-height:1.2;letter-spacing:-.02em}#ProjectArchitecture #preview{background:#fff;border:1px solid rgba(0,0,0,.08);padding:0 12px;box-shadow:0 8px 24px #0000000f;line-height:1.7;font-size:16px}#ProjectArchitecture #preview>*+*{margin-top:14px}#ProjectArchitecture #preview h1,#ProjectArchitecture #preview h2,#ProjectArchitecture #preview h3{line-height:1.25;letter-spacing:-.01em;margin-top:28px;margin-bottom:10px}#ProjectArchitecture #preview h2{font-size:1.35rem;padding-top:8px;border-top:1px solid rgba(0,0,0,.06)}#ProjectArchitecture #preview p{margin:0}#ProjectArchitecture #preview ul,#ProjectArchitecture #preview ol{padding-left:1.25rem;margin:0}#ProjectArchitecture #preview ul li,#ProjectArchitecture #preview ol li{margin:6px 0}#ProjectArchitecture #preview pre{margin:12px 0 0;padding:14px 16px;border-radius:10px;overflow-x:auto;background:#0b1020;color:#e6e8ee;border:1px solid rgba(255,255,255,.08)}#ProjectArchitecture #preview code{padding:.15rem .35rem;border-radius:6px;background:#0000000d;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.95em}#ProjectArchitecture #preview pre code{background:transparent;padding:0;font-size:.9em}#ProjectArchitecture #preview table{width:100%;border-collapse:collapse;margin-top:12px;overflow:hidden;border-radius:10px;border:1px solid rgba(0,0,0,.08)}#ProjectArchitecture #preview th,#ProjectArchitecture #preview td{text-align:left;padding:10px 12px;border-bottom:1px solid rgba(0,0,0,.06);vertical-align:top}#ProjectArchitecture #preview th{background:#00000008;font-weight:600}#ProjectArchitecture #preview tr:last-child td{border-bottom:none}#ProjectArchitecture #preview a{text-decoration:none;border-bottom:1px solid rgba(0,0,0,.25)}#ProjectArchitecture #preview a:hover{border-bottom-color:#0009}#ProjectArchitecture #preview hr{border:0;height:1px;background:#00000014;margin:20px 0}#ProjectArchitecture #preview strong{font-weight:650}@media(min-width:600px){#ProjectArchitecture{padding:0!important;background-color:transparent}}body.dark-mode #ProjectArchitecture{background:#111}body.dark-mode #ProjectArchitecture #preview{background:#1b1b1b;color:#e4e6eb;border-color:#ffffff14;box-shadow:none}body.dark-mode #ProjectArchitecture #preview h1,body.dark-mode #ProjectArchitecture #preview h2,body.dark-mode #ProjectArchitecture #preview h3,body.dark-mode #ProjectArchitecture #preview h4,body.dark-mode #ProjectArchitecture #preview h5{color:#fff}body.dark-mode #ProjectArchitecture #preview p,body.dark-mode #ProjectArchitecture #preview li{color:#d0d3d8}body.dark-mode #ProjectArchitecture #preview a{color:#4da3ff;border-bottom-color:#4da3ff66}body.dark-mode #ProjectArchitecture #preview a:hover{border-bottom-color:#4da3ffcc}body.dark-mode #ProjectArchitecture #preview hr{background:#ffffff14}body.dark-mode #ProjectArchitecture #preview table{border-color:#ffffff14}body.dark-mode #ProjectArchitecture #preview th{background:#ffffff0d}body.dark-mode #ProjectArchitecture #preview td{border-bottom:1px solid rgba(255,255,255,.06)}body.dark-mode #ProjectArchitecture #preview code{background:#ffffff14;color:#fc6}body.dark-mode #ProjectArchitecture #preview pre{background:#0f1115;color:#e6e8ee;border:1px solid rgba(255,255,255,.05)}
