.auth-container{height:100vh}.auth-box{padding:20px;width:400px}*{box-sizing:border-box;margin:0;padding:0}body{color:#000;flex-direction:column;font-family:Roboto,Open Sans,Lato,sans-serif;line-height:1.6;min-height:100vh}body,header{background-color:#fff;display:flex}header{align-items:center;border-bottom:1px solid #e0e0e0;justify-content:space-between;padding:20px 40px;position:sticky;top:0;z-index:100}header .logo{align-items:center;display:flex}header .logo img{height:60px;margin-right:15px}header .logo h1{color:#000;font-size:1.5em}nav a,nav button{background:none;border:none;color:#000;cursor:pointer;font-size:1em;margin-left:20px;text-decoration:none;transition:color .3s,-webkit-text-decoration .3s;transition:color .3s,text-decoration .3s;transition:color .3s,text-decoration .3s,-webkit-text-decoration .3s}nav a:hover,nav button:hover{color:#009fe3;text-decoration:underline}.headline-section{margin:20px 0;text-align:center}.headline-section h1{color:#009fe3;font-size:36px;font-weight:700;margin-bottom:10px}.headline-section h2{color:#000;font-size:24px}.hero{margin:20px auto;max-width:1200px;padding:0 20px;position:relative;width:100%}.hero .video-container{height:auto;padding-top:56.25%;position:relative;width:100%}.hero iframe{border:0;height:100%;left:0;position:absolute;top:0;width:100%}.about-section{margin:40px auto;max-width:800px;padding:0 20px;text-align:center}.about-section p{color:#000;font-size:1em;margin-bottom:20px}.about-section a{color:#009fe3;font-weight:700;text-decoration:none;transition:color .3s}.about-section a:hover{color:#007bb5;text-decoration:underline}.login-box{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 6px #0000001a;margin:40px auto;max-width:400px;padding:30px}.login-box h2{color:#000;margin-bottom:20px;text-align:center}.login-box form{display:flex;flex-direction:column}.login-box label{color:#000;font-size:1em;margin-bottom:5px}.login-box input[type=password],.login-box input[type=text]{border:1px solid #ccc;border-radius:4px;font-size:1em;margin-bottom:15px;padding:10px;width:100%}.login-box button{background-color:#009fe3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1em;padding:12px;transition:background-color .3s}.login-box button:hover{background-color:#007bb5}.login-box .forgot-password{margin-top:10px;text-align:right}.login-box .forgot-password a{color:#009fe3;font-size:.9em;text-decoration:none;transition:color .3s}.login-box .forgot-password a:hover{color:#007bb5}.tagline-section{margin:20px auto;max-width:800px;padding:0 20px;text-align:center}.tagline-section p{background-color:#ffffffb3;border-radius:8px;color:#009fe3;display:inline-block;font-size:1.2em;font-weight:700;padding:10px 20px}#upload-section{margin:40px auto;max-width:800px;padding:0 20px;text-align:center}#upload-section h2{color:#000;margin-bottom:20px}#upload-form{align-items:center;display:flex;flex-direction:column}#upload-form input[type=file]{border:1px solid #ccc;border-radius:4px;margin-bottom:15px;max-width:400px;padding:10px;width:100%}#upload-form button{background-color:#009fe3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1em;padding:12px 24px;transition:background-color .3s}#upload-form button:hover{background-color:#007bb5}.gallery-section{align-items:center;clear:both;display:flex;flex-direction:column;margin-left:25rem;margin-right:auto;margin-top:20px;max-width:1200px;padding:0 20px;width:100%}.gallery-section h2{color:#000;margin-bottom:20px;text-align:center}.gallery{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.diagram{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 5px #0000001a;padding:10px;position:relative;text-align:center;width:300px}.diagram h3,.diagram h4{color:#000;margin-bottom:10px}.diagram img{border-radius:4px;cursor:pointer;height:auto;max-width:100%;transition:transform .2s}.diagram img:hover{transform:scale(1.05)}.spinner{animation:spin 2s linear infinite;border:8px solid #f3f3f3;border-top-color:#009fe3;height:60px;margin:20px auto;width:60px}.hidden{display:none}.success-message{color:green;margin-top:10px;text-align:center}.modal-overlay{background-color:#000c;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.modal,.modal-overlay{align-items:center;display:flex;justify-content:center}.modal{background-color:#fff;border-radius:8px;box-shadow:0 5px 15px #0000004d;height:90%;overflow:hidden;padding:10px;position:relative;width:90%}.close-button{background:none;border:none;color:#aaa;cursor:pointer;font-size:28px;font-weight:700;position:absolute;right:15px;top:10px}.close-button:focus,.close-button:hover{color:#000;cursor:pointer;text-decoration:none}.image-container{align-items:center;cursor:grab;display:flex;height:100%;justify-content:center;width:100%}.modal-image{height:auto;max-height:100%;max-width:100%;object-fit:contain;transition:transform .2s ease;width:auto}.zoom-controls{display:flex;gap:10px;left:10px;position:absolute;top:10px}.zoom-button{background-color:#ffffffb3;border:none;border-radius:50%;cursor:pointer;font-size:18px;padding:10px;transition:background-color .3s}.zoom-button:hover{background-color:#fff}footer{background-color:#f9f9f9;border-top:1px solid #e0e0e0;color:#000;margin-top:auto;padding:20px 40px;text-align:center}footer p{font-size:.9em;margin-bottom:10px}footer a{color:#009fe3;margin:0 10px;text-decoration:none;transition:color .3s}footer a:hover{color:#007bb5}@media (max-width:768px){header{align-items:flex-start;flex-direction:column}nav{margin-top:10px}.headline-section h1{font-size:28px}.headline-section h2{font-size:20px}.diagram,.login-box{width:90%}.modal{width:95%}}@media (max-width:600px){.modal{padding:10px;width:95%}.zoom-controls{left:5px;top:5px}.zoom-button{font-size:16px;padding:8px}}@media (max-width:480px){header .logo h1{font-size:1.2em}nav a,nav button{font-size:.9em;margin-left:10px}.tagline-section p{font-size:1em;padding:6px 10px}.zoom-button{font-size:16px;padding:8px}}body{font-family:Roboto,sans-serif}.main-container{display:flex;height:calc(100vh - 60px)}.sidebar{background:none;box-shadow:none;display:flex;flex-direction:column;gap:10px;left:0;margin-left:20px;padding:1rem;position:fixed;top:120px;width:auto}.sidebar-item{align-items:center;background-color:#e6e6e6;border-radius:10px;box-shadow:0 2px 8px #0000001a;color:#494949;cursor:pointer;display:flex;gap:10px;margin-bottom:20px;padding:12px 20px;transition:all .3s ease}.sidebar-item:hover{background-color:#b6b6b6;transform:translateX(5px)}.sidebar-item.active{background-color:#007bff;border-left:none;color:#fff}.sidebar-item i{text-align:center;width:20px}.content-area{flex-grow:1;margin-left:-25rem;margin-top:1rem;overflow-y:auto;padding:1rem 0}.content-section{display:none}.content-section.active{display:block}#history-content .gallery-section,#history-content .upload-section{display:none!important}.upload-section{align-items:flex-start;display:flex!important;flex-direction:row!important;gap:20px;height:fit-content;margin:0 auto;max-width:1000px;width:100%;z-index:1}.floating-upload-box{background-color:#fff;border-radius:15px;box-shadow:0 4px 20px #00000026;height:fit-content;margin:0;min-width:550px;padding:15px}.upload-content{display:flex;flex-direction:column;gap:2px;width:95%}.input-row{width:100%}.input-group{display:flex;flex:1 1;gap:15px}.upload-left{flex:1 1;min-width:200px}.text-input-area{flex:2 1}textarea#code-description{border:1px solid #ddd;border-radius:8px;box-shadow:inset 0 1px 3px #0000001a;font-family:Roboto,sans-serif;font-size:14px;max-height:120px;min-height:60px;padding:12px;resize:vertical;transition:border-color .3s;width:100%}textarea#code-description:focus{border-color:#007bff;outline:none}.button-row{gap:15px;justify-content:space-between;margin-top:2px}.button-row,.left-buttons{align-items:center;display:flex}.left-buttons{gap:10px}.upload-button-wrapper{display:flex;flex:1 1;flex-direction:column;gap:8px;position:relative}.upload-button{align-items:center;background-color:#6c757d;border-radius:5px;color:#fff;cursor:pointer;display:inline-flex;flex-shrink:0;gap:8px;padding:10px 20px;transition:all .3s ease;width:130px}.upload-button.has-files{background-color:#28a745}.upload-button i{flex-shrink:0;transition:transform .3s ease}.upload-button.uploaded i{animation:checkmark .3s ease-in-out}.upload-button.has-files i{transform:scale(1.1)}.upload-text{margin-left:4px;max-width:calc(100% - 30px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes checkmark{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.upload-label{align-items:center;border:1px dashed #ddd;border-radius:8px;cursor:pointer;display:flex;min-height:38px;padding:8px 15px;transition:all .3s}.upload-label:hover{background-color:#f8f9fa;border-color:#007bff}.selected-files,.upload-placeholder{align-items:center;display:flex;gap:10px}.upload-icon{color:#666;font-size:1.5rem;transition:color .3s}.hidden{display:none!important}input[type=file]{display:none}.file-names{color:#666;font-size:14px;margin-left:10px}.file-display{display:none}.generate-button{align-items:center;background-color:#007bff;border:none;border-radius:24px;color:#fff;cursor:pointer;display:flex;height:48px;justify-content:center;min-height:48px;min-width:48px;padding:0;position:relative;transition:all .3s ease;width:48px}.generate-button i{font-size:20px;transition:transform .3s ease}.generate-text{background:#000c;border-radius:4px;color:#fff;font-size:12px;opacity:0;padding:5px 10px;pointer-events:none;position:absolute;right:60px;transition:opacity .3s ease;white-space:nowrap}@media (max-width:768px){.button-row{flex-direction:column}.left-buttons{width:100%}.generate-button{align-self:flex-end;height:48px;width:48px}.clear-button,.generate-button,.upload-button-wrapper{width:100%}.upload-section{flex-direction:column!important;padding:0 15px}.diagram-selection{min-width:0;width:100%}.floating-selection-box{max-height:300px}.floating-upload-box{min-width:0;width:100%}}.session-history{margin:0 auto;max-width:1200px;padding:20px}.session-dropdown{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:15px;overflow:hidden}.session-header{transition:background-color .3s}.session-header:hover{background:#e9ecef}.session-info{align-items:center;display:flex;gap:15px}.session-date{color:#333;font-weight:600}.session-toggle{transition:transform .3s}.session-toggle.active{transform:rotate(180deg)}.session-content{display:none;padding:20px}.session-content.active{display:block}.session-diagrams{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));padding:15px}.diagram-card{border:1px solid #e0e0e0;border-radius:8px;max-height:220px;max-width:220px;overflow:hidden;position:relative;transition:transform .3s}.diagram-type-overlay{background:#696969b3;color:#fff;font-size:.9rem;left:0;padding:8px;position:absolute;right:0;text-align:center;top:0;z-index:1}.diagram-card:hover{box-shadow:0 5px 15px #0000001a;transform:translateY(-5px)}.diagram-thumbnail{height:180px;object-fit:contain;width:100%}.diagram-info{background:#f8f9fa;text-align:center}.diagram-type{color:#333;font-weight:600;margin:0}.button-group{display:flex;gap:10px;margin-top:15px;width:100%}.clear-button,.generate-button{align-items:center;border:none;border-radius:5px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 20px;transition:all .3s ease}.generate-button:hover{background-color:#0056b3}.generate-button:hover .generate-text{opacity:1}.upload-button:hover{background-color:#5a6268}.clear-button{align-items:center;background-color:#dc3545;border:none;border-radius:5px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:10px 20px;transition:all .3s ease}.clear-button:hover{background-color:#c82333}.clear-button:active,.generate-button:active,.upload-button:active{transform:scale(.95)}.error-message{color:#dc3545;font-size:14px}.button-group i{font-size:14px}.selected-files,.upload-placeholder{transition:opacity .3s ease}.selected-files.hidden,.upload-placeholder.hidden{opacity:0;pointer-events:none}.main-upload-container{display:flex;flex-direction:row;gap:20px;margin:0 auto;max-width:1000px;top:20px;width:100%;z-index:1000}.diagram-selection{flex-shrink:0;height:fit-content;min-width:370px;top:20 px;width:370px}.floating-selection-box{background-color:#fff;border-radius:15px;box-shadow:0 4px 20px #00000026;height:100%;padding:5px}.floating-selection-box h3{color:#333;font-size:16px;margin:0 0 5px}.select-all{color:#333;font-weight:600;margin-bottom:2px}.diagram-checkboxes{display:flex;gap:20px}.checkbox-column{display:flex;flex:1 1;flex-direction:column;gap:1px}.checkbox-item{align-items:center;color:#444;cursor:pointer;display:flex;font-size:13px;gap:5px;padding:2px 0}.checkbox-item input[type=checkbox]{cursor:pointer;height:14px;width:14px}#dashboard-content{display:block;gap:20px}.selected-files,.upload-placeholder{width:100%}.dashboard-container{display:flex;flex-direction:column;min-height:100vh;padding-top:110px;width:100%}.sidebar-bottom{display:flex;flex-direction:column;gap:5px;margin-top:50vh}#back-button{color:#666;transition:all .3s ease}#back-button:hover{background-color:#e9ecef;color:#007bff}.gallery-header{align-items:center;display:flex;gap:1rem;justify-content:center;margin-bottom:2rem;width:100%}.gallery-header h2{margin:0;text-align:center}@media (max-width:1280px){.main-container{flex-direction:column;padding-top:70px}.sidebar{align-items:center;background-color:#fff;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:row;justify-content:center;margin:0;overflow-x:auto;padding:.5rem;position:static;top:auto;white-space:nowrap;width:100%}.sidebar-item{display:inline-flex;flex:0 0 auto;margin-bottom:0;margin-right:10px;min-width:fit-content;padding:8px 15px}.sidebar-bottom{flex-direction:row;justify-content:center;margin-left:10px;margin-top:0}.sidebar::-webkit-scrollbar{display:none}.sidebar{-ms-overflow-style:none;scrollbar-width:none}.diagram-selection{height:auto;margin:20px auto;max-width:600px;min-width:0;position:static;width:90%}.floating-selection-box{background-color:#fff;border-radius:15px;box-shadow:0 4px 20px #00000026;height:auto;padding:15px}.diagram-checkboxes{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.checkbox-column{flex:0 1 auto;min-width:150px}.upload-section{flex-direction:column!important;margin:20px auto;max-width:600px;width:90%}.floating-upload-box{margin:0 auto;min-width:0;width:100%}.content-area{margin-left:0;margin-top:1px;padding:1rem}.gallery-section{align-items:center;display:flex;flex-direction:column;margin:20px auto;margin-left:auto!important;max-width:600px;padding:0;position:static;width:90%}.gallery{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr);justify-content:center;width:100%}.diagram{margin:0;max-width:none;width:100%}.main-container{margin-top:1px}.dashboard-container{padding-top:80px}.main-container{padding-top:1px}}@media (max-width:768px){.main-container{padding-top:1px}.sidebar{flex-wrap:wrap;padding:.5rem}.sidebar-item{font-size:14px;padding:6px 12px}.content-area{margin-top:1px;padding:1px}.diagram-selection,.gallery-section,.upload-section{max-width:400px}.floating-selection-box h3{font-size:smaller}.floating-selection-box{min-height:330px}.gallery{gap:10px;grid-template-columns:repeat(2,1fr)}}.upload-section.disabled{filter:grayscale(1);opacity:.6;pointer-events:none;position:relative}.upload-section.disabled:before{background:#000c;border-radius:4px;color:#fff;content:"Upgrade plan or wait for next month";font-size:14px;left:50%;opacity:0;padding:8px 12px;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);transition:opacity .2s ease;white-space:nowrap;z-index:1000}.upload-section.disabled:hover:before{opacity:1}.upload-section.disabled{cursor:not-allowed;pointer-events:auto}.upload-section.disabled>*{pointer-events:none}.disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.5}.upload-button.disabled{opacity:.5;pointer-events:none}@media (max-width:600px){#root .sidebar{padding-bottom:14px}#upload-section .diagram-selection .floating-selection-box{height:159px;max-height:330px;min-height:159px;padding-bottom:3px;padding-right:0;padding-top:4px;transform:translatex(-11px) translatey(-49px)}#root .dashboard-container .main-container .content-area #dashboard-content #upload-section .diagram-selection .floating-selection-box{width:108%!important}#upload-section .file-upload .floating-upload-box{margin-right:14px;padding-left:5px;padding-right:5px;transform:translatex(-21px) translatey(-63px)}#root .dashboard-container .main-container .content-area #dashboard-content #upload-section .file-upload .floating-upload-box{width:100%!important}#upload-section .floating-quota-box{font-size:13px;margin-left:0;margin-right:0;padding-bottom:4px;padding-left:0;padding-right:0;transform:translatex(269px) translatey(-290px);width:133px}#upload-section{height:402px;margin-bottom:4px}}@media (max-width:480px){#upload-section{transform:translatex(-16px) translatey(20px)}.diagram-selection .diagram-checkboxes{height:366px;width:354px}.sidebar .sidebar-top .sidebar-item:nth-child(2){left:8px;position:relative}#upload-section .diagram-selection .floating-selection-box{height:176px;left:6px;position:relative;top:-86px;transform:translatex(-16px) translatey(20px)}#root .dashboard-container .main-container .content-area #dashboard-content #upload-section .diagram-selection .floating-selection-box{width:369px!important}#upload-section .file-upload .floating-upload-box{left:4px;position:relative;top:-25px}#upload-section .floating-quota-box{left:-8px;position:relative;top:-16px}}.edit-section{background-color:#bdbdbd;margin:0 auto 0 600px;max-width:1200px;min-width:1700px}.edit-content,.edit-section{border-radius:15px;padding:20px}.edit-content{background:#fff;box-shadow:0 4px 20px #00000026;min-height:700px;min-width:1600px}body{height:100vh;margin:0;overflow-x:hidden;padding:0}.homepage,.initial-section{position:relative;width:100%}.initial-section{align-items:center;background-color:#fff;display:flex;height:100vh;justify-content:center}.auth-section{margin-top:100vh;position:relative;z-index:2}.auth-container,.auth-section{background-color:#f4f4f4;min-height:100vh;width:100%}.auth-container{align-items:center;display:flex;justify-content:center;padding:40px}.spinner-container{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.spinner{animation:spin 1s linear infinite;border:5px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:40px;width:40px}.auth-box{background:#fff;border-radius:8px;box-shadow:0 4px 10px #0000001a;max-width:600px;padding:30px;width:100%}.hed{display:flex;justify-content:left}h2,h3{color:#333;text-align:center}.form-row{display:flex;gap:10px;margin-bottom:10px}.form-row input{border:1px solid #ccc;border-radius:5px;flex:1 1;padding:10px}.auth-button{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;padding:10px;width:100%}.auth-button:hover{background-color:#0056b3}.forgot-password{margin-top:10px;text-align:center}.forgot-password a{color:#007bff;text-decoration:none}.forgot-password a:hover{text-decoration:underline}.error-message{color:red;margin-top:10px;text-align:center}.top-nav{align-items:center;background:linear-gradient(180deg,#fff,#f7f7f7);border-radius:30px;box-shadow:0 4px 20px #0003;display:flex;flex:none;height:60px;justify-content:space-between;margin-top:20px;padding:.5rem 2rem;position:fixed;z-index:10;z-index:100}.home-container,.login-page,.pricing-page{min-height:100vh;position:relative}.nav-left{flex-shrink:0}.nav-center{display:flex;flex:1 1;gap:1rem;justify-content:center}.nav-right{align-items:center;display:flex;flex-shrink:0;gap:1rem}.top-nav .logo-img{height:40px;margin-left:20px;margin-right:10px;margin-top:8px;width:auto}.dashboard-btn,.dashboard-btn:hover,.midbtn,.midbtn:hover{text-decoration:none}.midbtn{background:#0000;border:none;color:#009fe3;cursor:pointer;font-size:medium;font-weight:700;padding:.5em 1.5em;position:relative;text-transform:uppercase;transition:.5s ease}.midbtn:before{background-color:#009fe3;bottom:0;content:"";height:2px;left:0;position:absolute;transition:.5s ease;width:0}.midbtn:hover{color:#009fe3;transition-delay:.5s}.midbtn:hover:before{width:100%}.midbtn:after{background:linear-gradient(180deg,#e6f9ff,#d0ecff);bottom:0;content:"";height:0;left:0;position:absolute;transition:.4s ease;width:100%;z-index:-1}.midbtn:hover:after{color:#009fe3;height:100%;transition-delay:.4s}.about-btn,.contact-btn,.pricing-btn{color:grey;font-size:medium;font-weight:700;overflow:hidden;padding:.5rem 1.5rem;position:relative;text-decoration:none;transition:color .3s,box-shadow .3s,transform .3s}.about-btn:after,.contact-btn:after,.pricing-btn:after{background-color:grey;bottom:0;content:"";height:2px;left:0;position:absolute;transform:scaleX(0);transform-origin:middle;transition:transform .3s ease;width:100%}.about-btn:hover:after,.contact-btn:hover:after,.pricing-btn:hover:after{transform:scaleX(1)}.login-btn{background:linear-gradient(180deg,#e6f9ff,#d0ecff);border-radius:4px;font-size:medium;font-weight:700;margin-left:auto;margin-right:10px;padding:.5rem 1.5rem;position:relative;text-decoration:none;transition:color .3s,box-shadow .3s,transform .3s}.login-btn,.login-btn:hover{box-shadow:0 2px 4px #0000001a;color:#009fe3}.login-btn:hover{transform:translateY(-1px)}.dashboard-btn{background:linear-gradient(180deg,#e6f9ff,#d0ecff);border-radius:4px;font-size:medium;font-weight:700;margin-left:auto;margin-right:10px;padding:.5rem 1.5rem;position:relative;text-decoration:none;transition:color .3s,box-shadow .3s,transform .3s}.dashboard-btn,.dashboard-btn:hover{box-shadow:0 2px 4px #0000001a;color:#009fe3}.dashboard-btn:hover{transform:translateY(-1px)}.signup-btn{background:linear-gradient(180deg,#fff,#f7f7f7);border-radius:4px;font-size:medium;font-weight:700;padding:.5rem 1.5rem;position:relative;text-decoration:none;transition:color .3s,box-shadow .3s,transform .3s}.signup-btn,.signup-btn:hover{box-shadow:0 2px 4px #0000001a;color:#009fe3}.signup-btn:hover{transform:translateY(-1px)}.hamburger{cursor:pointer;display:none;flex-direction:column;height:24px;justify-content:space-between;margin-right:1rem;width:30px}.bar{background-color:#333;border-radius:2px;height:3px;transition:all .3s ease;width:100%}.nav-menu{align-items:center;display:flex;flex-direction:row;gap:1rem}.top-nav{left:50%;top:0;transform:translateX(-50%);width:calc(100% - 40px);z-index:999}@media (max-width:768px){.top-nav{flex-direction:row;justify-content:space-between;left:50%;margin-top:10px;padding:.5rem 1rem;position:fixed;transform:translateX(-50%);width:calc(100% - 40px)}.nav-left,.top-nav{align-items:center;display:flex}.top-nav .logo-img{height:30px;margin:0}.hamburger{cursor:pointer;display:flex;flex-direction:column;height:20px;justify-content:space-between;width:30px}.hamburger .bar{background-color:#333;height:3px;transition:all .3s ease;width:100%}.nav-menu{background:#fff;border-radius:15px;box-shadow:0 4px 20px #0000001a;flex-direction:column;left:20px;max-height:0;opacity:0;overflow:hidden;padding:0;position:fixed;right:20px;top:80px;transition:all .3s ease-in-out;width:calc(100% - 40px)}.nav-menu.active{max-height:500px;opacity:1;padding:1rem}.nav-menu .dashboard-btn,.nav-menu .midbtn{border-radius:8px;margin:.25rem 0;padding:1rem;text-align:center;width:100%}.nav-menu .dashboard-btn,.nav-menu .midbtn{display:block}.nav-menu .midbtn{background:#0000}.nav-menu .dashboard-btn{background:linear-gradient(180deg,#e6f9ff,#d0ecff);box-shadow:0 2px 4px #0000001a;color:#009fe3;margin:.25rem 1rem;padding:.5rem 1.5rem;width:calc(100% - 2rem)}.nav-right{display:flex;justify-content:center;margin-top:.5rem;width:100%}}.small-spinner-container{align-items:center;display:flex;justify-content:center}.small-spinner{animation:spin 1s linear infinite;border:3px solid #0000001a;border-radius:50%;border-top-color:#009fe3;height:24px;width:24px}.small-spinner-container.quota{height:100%;min-height:60px}.small-spinner.quota{border-width:3px;height:30px;width:30px}.small-spinner-container.gallery{margin:10px 0}.small-spinner.gallery{border-width:2px;height:20px;width:20px}.small-spinner-container.upload{display:inline-flex;margin-left:8px}.small-spinner.upload{border-width:2px;height:16px;width:16px}.small-spinner.session{border-width:2px;height:20px;margin-left:8px;width:20px}.small-spinner-container.session{display:inline-flex}.sessions-container{margin:0 auto 0 50rem;max-width:1200px;padding:20px}.session-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}.session-header{align-items:center;background:#f8f9fa;border-radius:8px 8px 0 0;cursor:pointer;display:flex;justify-content:space-between;padding:15px 20px}.session-header:hover{background:#f0f0f0}.arrow{transition:transform .3s ease}.arrow.expanded{transform:rotate(180deg)}.diagrams-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));padding:20px}.diagram-thumbnail{border-radius:4px;box-shadow:0 1px 3px #0000001a;cursor:pointer;display:flex;flex-direction:column;height:100%;overflow:hidden;transition:transform .2s ease}.diagram-thumbnail:hover{transform:scale(1.05)}.diagram-thumbnail img{flex-shrink:0;height:150px;object-fit:cover;width:100%}.diagram-info{background:#fff;display:flex;flex-direction:column;flex-grow:1;justify-content:space-between;padding:10px}.diagram-info p{word-wrap:break-word;font-weight:500;line-height:1.2;margin:0 0 4px;overflow-wrap:break-word}.diagram-info small{word-wrap:break-word;color:#666;display:block;font-size:.85em}.error,.loading{font-size:1.1em;padding:20px;text-align:center}.error{color:#dc3545}.loading-container{align-items:center;display:flex;gap:10px;justify-content:center;padding:20px}.loading{color:#666;font-size:16px}@media (max-width:1280px){.sessions-container{margin-left:0;max-width:600px;padding:10px;width:90%}.session-card{margin-bottom:15px}.session-header{padding:12px 15px}.diagrams-grid{gap:15px;grid-template-columns:repeat(3,1fr);padding:15px}.diagram-thumbnail img{height:120px}.diagram-info{padding:8px}.diagram-info p{font-size:.9em}.diagram-info small{font-size:.8em}}@media (max-width:768px){.diagrams-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.sessions-container{padding:5px;width:95%}.diagrams-grid{gap:10px;grid-template-columns:1fr;padding:10px}.diagram-thumbnail img{height:140px}}.session-title{color:#333;font-weight:500;margin:0 0 0 500px;padding-bottom:5px}.session-title svg{transition:color .2s ease}.session-title svg:hover{color:#007bff}.diagram-type-overlay svg{color:#fff;transition:color .2s ease}.diagram-type-overlay svg:hover{color:#007bff}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:1280px){.session-title{justify-content:center;margin-left:0;text-align:center;width:100%}}@media (max-width:768px){.session-title{flex-direction:row;gap:10px;margin:0 auto;padding:10px 0}.session-title h2{font-size:1.5rem;margin:0}}@media (max-width:480px){.session-title h2{font-size:1.2rem}.sessions-container{padding:10px}}.floating-quota-box{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin:20px;min-height:100px;padding:10px;width:250px}.quota-info p{color:#0e0e0e;margin:8px 0}.dashboard-main{align-items:flex-start;display:flex;gap:20px}.floating-upload-box{flex:1 1}.floating-quota-box{flex-shrink:0}@media (max-width:1280px){.floating-quota-box{border-radius:15px;box-shadow:0 4px 20px #00000026;flex-shrink:0;margin:20px auto;max-width:600px;min-width:0;position:static;width:90%}.dashboard-main{flex-direction:column}}.diagram-editor{box-sizing:border-box;display:flex;flex-direction:column;gap:20px;height:100vh;padding:10px}.diagram-row{display:flex;flex:1 1;gap:10px;min-height:600px}.sidebar-column{gap:12px;width:max-content}.sidebar-column,.sidebar-controls{display:flex;flex-direction:column}.sidebar-controls{gap:10px;margin-bottom:10px;width:min-content}.sidebar-controls button,.sidebar-controls select{font-size:14px;padding:8px;width:100%}.sidebar-controls button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer}.sidebar-controls button:hover{background-color:#0056b3}.diagram-indicator{color:#007bff;font-size:14px;font-weight:500}.diagram-selector{background-color:#fff;border:1px solid #ccc;border-radius:4px;font-size:16px;min-width:200px;padding:8px 12px}.diagram-selector:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.stencil-container{background-color:#f5f5f5;border-right:1px solid #ccc;display:block;height:600px;overflow-x:hidden;overflow-y:auto;padding:10px;position:relative;width:250px}.stencil-container svg{overflow:visible;width:100%}.paper-container{background-color:#dadada;flex:3 1;height:600px}.png-preview{align-items:center;background-color:#dadada;display:flex;flex:1 1;flex-direction:column;min-width:200px;padding:10px;position:relative}.png-preview h3{left:50%;margin:0;padding:10px 0;position:absolute;top:0;transform:translateX(-50%)}.png-preview img{margin-top:40px}.uml-row{display:flex;gap:10px}.uml-load,.uml-update{background-color:#dadada;border-radius:4px;display:flex;flex:1 1;flex-direction:column;height:250px;padding:15px}.uml-load textarea,.uml-update textarea{box-sizing:border-box;height:100%;resize:vertical;width:100%}text{color:red}.clearfix{background-color:#dadada;border-radius:4px;padding:15px;text-align:center}.clearfix button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;margin:0 10px;padding:8px 16px}.clearfix button:hover{background-color:#0056b3}.paper-wrapper{flex:2 1;position:relative}.edit-zoom-controls{display:flex;gap:5px;position:absolute;right:10px;top:10px;z-index:1000}.edit-zoom-controls button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:8px 12px;transition:background-color .2s}.edit-zoom-controls button:hover{background-color:#0056b3}
/*# sourceMappingURL=main.551cc432.css.map*/