.schematic-master-plan{width:100%;position:relative;overflow:hidden}.schematic-master-plan__viewport{background-color:var(--color-bg-primary);width:100%;height:100vh;position:sticky;top:0;left:0;overflow:hidden}.schematic-master-plan__canvas{transform-origin:50%;will-change:transform;position:absolute;top:50%;left:50%}.schematic-master-plan__grid{pointer-events:none;background-image:linear-gradient(var(--color-bg-secondary)1px,transparent 1px),linear-gradient(90deg,var(--color-bg-secondary)1px,transparent 1px);opacity:.8;background-size:40px 40px;width:200%;height:200%;position:absolute;inset:-50%}.schematic-master-plan__grid--fine{opacity:.3;background-size:8px 8px}.schematic-master-plan__connections{pointer-events:none;z-index:1;width:100%;height:100%;position:absolute;inset:0}.schematic-connection{stroke:var(--color-border);stroke-width:2px;fill:none;stroke-dasharray:8 4}.schematic-connection--active{stroke:var(--color-accent-primary);stroke-dasharray:none;animation:2s ease-in-out infinite connection-pulse}@keyframes connection-pulse{0%,to{opacity:.4}50%{opacity:1}}.schematic-connection__node{fill:var(--color-bg-card);stroke:var(--color-border);stroke-width:2px}.schematic-connection__node--active{fill:var(--color-accent-primary);stroke:var(--color-text-primary)}.schematic-master-plan__nodes{z-index:2;grid-template-columns:repeat(2,1fr);gap:80px;padding:60px;display:grid;position:relative}.schematic-project-node{background-color:var(--color-bg-card);border:2px solid var(--color-border);width:900px;height:680px;box-shadow:var(--shadow-hard);flex-direction:column;transition:transform .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden}.schematic-project-node:hover{box-shadow:var(--shadow-hard-hover);transform:translate(-2px,-2px)}.schematic-project-node--active{border-color:var(--color-accent-primary);box-shadow:12px 12px 0px var(--color-accent-primary)}.schematic-project-node--ghosted{opacity:.3;filter:grayscale()}.schematic-project-node__bracket{border-color:var(--color-text-primary);z-index:10;border-style:solid;width:40px;height:40px;position:absolute}.schematic-project-node__bracket--tl{border-width:4px 0 0 4px;top:-2px;left:-2px}.schematic-project-node__bracket--tr{border-width:4px 4px 0 0;top:-2px;right:-2px}.schematic-project-node__bracket--bl{border-width:0 0 4px 4px;bottom:-2px;left:-2px}.schematic-project-node__bracket--br{border-width:0 4px 4px 0;bottom:-2px;right:-2px}.schematic-project-node--active .schematic-project-node__bracket{border-color:var(--color-accent-primary)}.schematic-project-node__header{padding:var(--space-md)var(--space-lg);background-color:var(--color-bg-primary);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.schematic-project-node__id{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-secondary);font-size:12px}.schematic-project-node__status{align-items:center;gap:var(--space-sm);display:flex}.schematic-project-node__status-dot{background-color:var(--color-success);width:12px;height:12px}.schematic-project-node--active .schematic-project-node__status-dot{background-color:var(--color-accent-primary);animation:1s ease-in-out infinite status-blink}@keyframes status-blink{0%,to{opacity:1}50%{opacity:.3}}.schematic-project-node__status-text{font-family:var(--font-mono);text-transform:uppercase;color:var(--color-text-secondary);font-size:12px}.schematic-project-node__content{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.schematic-project-node__info{height:35%;padding:var(--space-md)var(--space-lg);border-top:2px solid var(--color-border);background-color:var(--color-bg-primary);flex-direction:column;flex:none;display:flex}.schematic-project-node__info-header{align-items:center;gap:var(--space-md);margin-bottom:var(--space-sm);display:flex}.schematic-project-node__icon{border:1px solid var(--color-border);width:48px;height:48px;color:var(--color-accent-primary);justify-content:center;align-items:center;display:flex}.schematic-project-node__icon svg{width:24px;height:24px}.schematic-project-node__title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:-.02em;color:var(--color-text-primary);margin:0;font-size:24px;font-weight:700}.schematic-project-node__inline-status{align-items:center;gap:var(--space-sm);margin-inline-start:auto;display:flex}.schematic-project-node__inline-status--active .schematic-project-node__status-dot{background-color:var(--color-accent-primary);animation:1s ease-in-out infinite status-blink}@media (min-width:769px){.schematic-project-node__header--mobile-only{display:none}}@media (max-width:768px){.schematic-project-node__inline-status{display:none}}.schematic-project-node__description{font-family:var(--font-mono);color:var(--color-text-secondary);flex:1;margin:0;font-size:16px;line-height:1.7}.schematic-project-node__gallery{background-color:var(--color-bg-secondary);flex-direction:column;width:100%;height:65%;display:flex;position:relative}.schematic-project-node__image{background-color:var(--color-bg-secondary);flex:1;width:100%;position:relative;overflow:hidden}.schematic-project-node__image img{object-fit:cover;filter:grayscale();opacity:.7;width:100%;height:100%;transition:filter .5s,opacity .5s}.schematic-project-node--active .schematic-project-node__image img{filter:grayscale(0%);opacity:1}.schematic-project-node__scan-line{background:linear-gradient(90deg,transparent,var(--color-accent-primary),transparent);opacity:0;pointer-events:none;z-index:10;width:100%;height:2px;position:absolute;top:0;left:0}.schematic-project-node__scan-line--active{opacity:1;background:linear-gradient(90deg,transparent 0%,var(--color-accent-primary)20%,var(--color-accent-primary)80%,transparent 100%);height:4px;box-shadow:0 0 12px var(--color-accent-primary),0 0 24px var(--color-accent-primary)}.schematic-project-node__image-outgoing{z-index:5;background-color:var(--color-bg-secondary);clip-path:inset(0%);width:100%;height:100%;position:absolute;top:0;left:0}.schematic-project-node__image-outgoing img{object-fit:cover;width:100%;height:100%}.schematic-project-node__image-outgoing--mobile{background-color:var(--color-bg-secondary);width:100%;height:100%;padding:var(--space-md);clip-path:inset(0%);justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0}.schematic-project-node__image--mobile{background-color:var(--color-bg-secondary);padding:var(--space-md);justify-content:center;align-items:center;display:flex}.schematic-project-node__iphone-wrapper{aspect-ratio:433/882;justify-content:center;width:auto;height:85%;display:flex}.schematic-project-node__iphone{height:100%;width:auto!important}.schematic-project-node__thumbnails{justify-content:center;align-items:center;gap:var(--space-xs);padding:var(--space-xs)var(--space-sm);border-top:1px solid var(--color-border);background-color:var(--color-bg-primary);height:48px;display:flex}.schematic-project-node__thumbnail-btn{appearance:none;border:1px solid var(--color-border);color:var(--color-text-secondary);font-family:var(--font-mono);cursor:pointer;text-align:center;background:0 0;min-width:32px;padding:4px 8px;font-size:10px;transition:all .2s}.schematic-project-node__thumbnail-btn:hover{border-color:var(--color-text-primary);color:var(--color-text-primary);background-color:var(--color-bg-secondary)}.schematic-project-node__thumbnail-btn--active{background-color:var(--color-accent-primary);border-color:var(--color-text-primary);color:var(--color-text-primary);box-shadow:2px 2px 0px var(--color-text-primary);font-weight:700}.schematic-project-node--active .schematic-project-node__scan-line{opacity:1;animation:2s linear infinite scan-vertical}@keyframes scan-vertical{0%{top:0}to{top:100%}}.schematic-minimap{bottom:var(--space-lg);right:var(--space-lg);background-color:var(--color-bg-card);border:2px solid var(--color-border);width:160px;height:120px;box-shadow:var(--shadow-hard);z-index:100;position:fixed;overflow:hidden}.schematic-minimap__header{padding:var(--space-xs);background-color:var(--color-bg-primary);border-bottom:1px solid var(--color-border);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-secondary);font-size:8px}.schematic-minimap__canvas{width:100%;height:calc(100% - 24px);padding:var(--space-xs);position:relative}.schematic-minimap__node{background-color:var(--color-bg-secondary);border:1px solid var(--color-border);width:24px;height:18px;position:absolute}.schematic-minimap__node--active{background-color:var(--color-accent-primary);border-color:var(--color-text-primary)}.schematic-minimap__viewport{border:2px solid var(--color-accent-primary);pointer-events:none;background-color:#00e0ff1a;transition:all .3s;position:absolute}.schematic-minimap__connection{background-color:var(--color-border);transform-origin:0;height:1px;position:absolute}.schematic-scroll-indicator{bottom:var(--space-lg);align-items:center;gap:var(--space-xs);z-index:100;padding:var(--space-sm)var(--space-md);border:1px solid var(--color-border);background-color:#000000b3;flex-direction:column;display:flex;position:fixed;left:50%;transform:translate(-50%)}.schematic-scroll-indicator__text{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:#fff;font-size:10px}.schematic-scroll-indicator__line{background:linear-gradient(#fff,#0000);width:1px;height:32px;animation:1.5s ease-in-out infinite scroll-bounce}@keyframes scroll-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}.schematic-progress{background-color:var(--color-bg-secondary);z-index:100;width:100%;height:3px;position:fixed;top:0;left:0}.schematic-progress__bar{background-color:var(--color-accent-primary);width:0%;height:100%;transition:width .1s}[dir=rtl] .schematic-minimap{right:auto;left:var(--space-lg)}[dir=rtl] .schematic-master-plan__nodes,[dir=rtl] .schematic-project-node{transform:scaleX(-1)}[dir=rtl] .schematic-project-node:hover{transform:scaleX(-1)translate(2px,-2px)}[dir=rtl] .schematic-master-plan__canvas{transform-origin:50%}[dir=rtl] .schematic-project-node__info{text-align:right}[dir=rtl] .schematic-project-node__header,[dir=rtl] .schematic-project-node__status{flex-direction:row-reverse}@media (max-width:1280px){.schematic-project-node{width:700px;height:500px}.schematic-project-node__title{font-size:20px}.schematic-project-node__description{font-size:13px}}@media (max-width:1024px){.schematic-project-node{width:550px;height:450px}.schematic-master-plan__nodes{gap:60px;padding:40px}.schematic-project-node__description{font-size:13px;line-height:1.6}.schematic-project-node__gallery{width:200px}.schematic-project-node__icon{width:48px;height:48px;margin-bottom:var(--space-sm)}.schematic-minimap{width:140px;height:110px}}@media (max-width:768px){.schematic-master-plan__nodes{grid-template-columns:1fr;gap:40px;padding:calc(50vh + 24px) 24px 24px}.schematic-project-node{width:calc(100vw - 48px);max-width:500px;height:560px;overflow:hidden}.schematic-project-node__content{flex-direction:column}.schematic-project-node__info{padding:var(--space-md);flex:1;height:auto}.schematic-project-node__gallery{border-top:1px solid var(--color-border);width:100%;height:60%}.schematic-project-node__image{width:100%;height:100%}.schematic-project-node__title{font-size:22px}.schematic-project-node__description{max-width:none;font-size:13px}.schematic-project-node__icon{width:44px;height:44px}.schematic-project-node__bracket{width:20px;height:20px;border-width:3px!important}.schematic-minimap{display:none}.schematic-scroll-indicator{bottom:var(--space-md)}.schematic-scroll-indicator__text{font-size:9px}.schematic-master-plan__connections{display:none}}@media (max-width:480px){.schematic-master-plan__nodes{gap:24px;padding:calc(50vh + 16px) 16px 16px}.schematic-project-node{width:calc(100vw - 32px);height:520px;overflow:hidden}.schematic-project-node__header{padding:var(--space-xs)var(--space-sm)}.schematic-project-node__id{font-size:10px}.schematic-project-node__status-text{display:none}.schematic-project-node__status-dot{width:10px;height:10px}.schematic-project-node__info{padding:var(--space-sm)}.schematic-project-node__icon{width:40px;height:40px}.schematic-project-node__title{margin-bottom:var(--space-xs);font-size:20px}.schematic-project-node__description{-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.schematic-project-node__gallery{height:55%}.schematic-project-node__size{font-size:10px}.schematic-project-node__bracket{width:16px;height:16px}}@media (prefers-reduced-motion:reduce){.schematic-project-node__scan-line,.schematic-scroll-indicator__line,.schematic-project-node__status-dot,.schematic-connection--active{animation:none}.schematic-project-node,.schematic-project-node__specs,.schematic-project-node__image img{transition-duration:.01ms}}
