/* ScoDoc, (c) Emmanuel Viennet 1998 - 2024 */ .scodoc-container { display: grid; grid-template-columns: 130px 1fr; grid-template-rows: auto 1fr; } .app-corner { /* background-color: rgb(235, 235, 228); */ grid-column-start: 1; grid-row-start: 1; display: flex; flex-direction: column; justify-content: space-between; padding-left: 4px; } .formsemestre-page-header { grid-column-start: 2; grid-row-start: 1; display: flex; flex-direction: column; flex-grow: 1; font-family: Arial, Helvetica, sans-serif; justify-content: left; white-space: nowrap; padding: 0 0px; /* Optional: Padding for some space around the text */ } #sidebar { border-right: 1px solid rgb(230, 230, 225); grid-column-start: 1; grid-row-start: 2; padding-left: 4px; /* Sidebar transition */ transition: transform 400ms ease, opacity 400ms ease; } #app-content { grid-column-start: 2; grid-row-start: 2; background-color: #f0f0f0; /* Optional: background color for content area */ /* Sidebar transition */ transition: margin-left 400ms ease; } .infos { /* container infos semestre */ font-size: 12pt; } .sco_menu { /* container menu bar semestre */ background-color: lightblue; flex-grow: 1; padding: 5px; margin-top: 5px; } .hamburger { white-space: nowrap; display: flex; align-items: center; } .hamburger>div { font-size: 12pt; font-weight: bold; vertical-align: bottom; white-space: nowrap; } .hamburger>.hamburger-icon { font-size: 24pt; margin-top: -8px; margin-right: 8px; } .scodoc-index, .scodoc-index a { font-size: 14pt; display: flex; color: rgb(4, 16, 159); width: 100%; } div.scodoc-index[mobile="true"] a { justify-content: center; } .scodoc-index a:any-link { text-decoration: none; } .scodoc-index.collapsed { display: none; } .hamburger-menu { display: none; flex-direction: column; background-color: #333; position: fixed; top: 50px; left: 0; /* width: 100%; */ max-width: 400px; z-index: 1001; /* Ensure it is above the top bar */ } .hamburger-menu div { padding: 10px; border-bottom: 1px solid #444; } .hamburger-menu a { color: white; text-decoration: none; } #toggle-sidebar-img { box-sizing: content-box; padding-left: 4px; padding-right: 4px; transition: transform 400ms ease; } #toggle-sidebar-img.collapsed { transform: scaleX(-1); } .vspace48 { margin-top: 48px; } .hidden { display: none; } .overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.05); z-index: 1000; /* Below the menu but above the top bar */ } /* Media query for desktop devices */ @media (min-width: 769px) { #sidebar.collapsed { /* Slide the sidebar out to the left */ transform: translateX(-130px); opacity: 0; /* fade out effect */ } #app-content.collapsed { grid-column-start: 1; grid-column-end: 3; } } /* Hide the sidebar for mobile devices and print */ @media screen and (max-width: 768px), print { .toggle-sidebar { display: none; } #app-content { grid-column-start: 1; grid-column-end: 3; } div#sidebar { position: fixed; width: 100vw; height: 100vh; background: whitesmoke; z-index: 900; display: flex !important; flex-direction: column; align-items: center; gap: 4px; text-align: center; left: -100%; transition: left 400ms ease; padding-top: 15vh; } div#sidebar[aria-expanded="true"] { left: 0; } [desktop="true"] { display: none !important; } } @media screen and (min-width: 769px) { [mobile="true"] { display: none !important; } } /* Sidebar */ #sidebar sco-title { color: rgb(102, 102, 102); font-size: large; font-weight: bold; text-decoration: none; } #sidebar .sidebar-link-dept { color: rgb(102, 102, 102); font-weight: bold; font-size: large; margin-bottom: 0; margin-top: 12px; } #sidebar .sidebar-link-dept a:any-link { text-decoration: none; } #sidebar div.sidebar-item { margin-left: 4px; } #sidebar div.sidebar-item a:any-link { color: rgb(4, 16, 159); text-decoration: none; } #sidebar div.sidebar-item a:hover { color: rgb(153, 51, 51); text-decoration: underline; } /* Content */ #app-content>.gtrcontent { height: 100%; margin-left: 10px; margin-bottom: 10px; } /*Mobile Navbar*/ #logo-scodoc { /* base image : logo_rectangle.png 527x192 */ --size: 64px; height: calc(var(--size) / 2.744); width: var(--size); margin: 4px; cursor: pointer; } #mobileNav { position: sticky; top: 0; z-index: 1000; display: flex; justify-content: space-evenly; align-items: center; /* From https://css.glass */ background: rgba(255, 255, 255, 0.2); border-radius: 0 0 16px 16px; box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1); backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); border: 1px solid rgba(255, 255, 255, 0.3); } body { position: relative; } .no-scroll { overflow: hidden !important; margin: 0 !important; height: 100vh !important; } /* Tableau des modules */ #tableau-modules-summary { list-style: none; } #tableau-modules-summary::marker { display: none; } #tableau-modules-summary>h3::after { content: ""; display: inline-block; width: 0; height: 0; margin-left: 4px; vertical-align: middle; border-top: 4px dashed; border-right: 4px solid transparent; border-left: 4px solid transparent; } #tableau-modules-details:not([open])>#tableau-modules-summary>h3::before { content: "(caché) "; font-size: smaller; font-weight: lighter; font-style: italic; } #tableau-modules-details:not([open]) #tableau_modules { display: none; } /* #region bootstrap <== Remplacement styles bootstrap ==> */ * { box-sizing: border-box; } .alert { text-wrap: balance; } .container { max-width: 1140px; --x: 1.5rem; --y: 0; width: 100%; padding-right: calc(var(--x) * 0.5); padding-left: calc(var(--x) * 0.5); margin-right: auto; margin-left: auto; } /* #region btn */ .btn { appearance: none; background-color: #FAFBFC; border: 1px solid rgba(27, 31, 35, 0.15); border-radius: 6px; box-shadow: rgba(27, 31, 35, 0.04) 0 1px 0, rgba(255, 255, 255, 0.25) 0 1px 0 inset; box-sizing: border-box; color: #24292E; cursor: pointer; display: inline-block; font-family: -apple-system, system-ui, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"; font-size: 14px; font-weight: 500; line-height: 20px; list-style: none; padding: 6px 16px; position: relative; transition: background-color 0.2s cubic-bezier(0.3, 0, 0.5, 1); user-select: none; -webkit-user-select: none; touch-action: manipulation; vertical-align: middle; white-space: nowrap; word-wrap: break-word; margin: 4px 2px; } a.btn { text-decoration: none; } .btn:hover { background-color: #F3F4F6; text-decoration: none; transition-duration: 0.1s; } .btn:disabled { background-color: #FAFBFC; border-color: rgba(27, 31, 35, 0.15); color: #959DA5; cursor: default; } .btn:active { background-color: #EDEFF2; box-shadow: rgba(225, 228, 232, 0.2) 0 1px 0 inset; transition: none 0s; } .btn:focus { outline: 1px transparent; } .btn:before { display: none; } .btn:-webkit-details-marker { display: none; } /* #endregion btn */ /* #region form */ label, input, select, textarea { margin: 4px 2px; } .control-label { display: inline-block; display: block; margin-bottom: 8px; font-weight: 500; color: #333; } form.form div.checkbox { margin-top: 6px; margin-bottom: 6px; } div.form-group { margin-top: 16px; margin-bottom: 6px; } .form-group input, .form-control { width: 100%; padding: 10px; margin-bottom: 4px; border: 1px solid #ced4da; border-radius: 4px; font-size: 16px; transition: border-color 0.2s ease-in-out; } /* Media query for desktop devices évite que les boutons submit ne deviennent trop larges */ @media (min-width: 769px) { .form-group input[type="submit"] { min-width: 192px; width: auto; } } .form-group input:focus, .form-control:focus { outline: none; border-color: #007bff; box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25); } .form-group input[type="submit"], .form-control[type="submit"] { background-color: #007bff; color: white; padding: 10px 16px; border: none; border-radius: 4px; font-size: 16px; cursor: pointer; transition: background-color 0.2s ease-in-out; } .form-group input[type="submit"]:hover, .form-control[type="submit"]:hover { background-color: #0056b3; color: #fff; } .form-group input[type="submit"][name="cancel"]:hover, .form-control[type="submit"][name="cancel"]:hover { background-color: #606060; color: #fff; } .form-group input[type="submit"][name="cancel"], .form-control[type="submit"][name="cancel"] { background-color: #8a8a8a; color: #fff; } fieldset { min-width: 0; padding: 0; margin: 0; border: 0; } /* #endregion form */ /* #region pagination */ .pagination { list-style: none; display: flex; } /* #endregion pagination */ /* #region navbar */ /* Navbar container */ .navbar { background-color: #f8f9fa; padding: 8px 2px; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); display: flex; justify-content: center; } .navbar>.container.container-fluid { margin: 4px 2px; } .container-fluid { display: flex; justify-content: space-between; align-items: center; padding: 0 15px; } .navbar-collapse { width: 100%; display: flex; } /* Brand/logo */ .navbar-brand { font-size: 1.25rem; font-weight: bold; color: #333; text-decoration: none; } /* Navigation links container */ .navbar-nav { display: flex; list-style-type: none; margin: 0; padding: 0; } /* Navigation links */ .nav-item { margin: 0 10px; } .nav-link { color: #333; text-decoration: none; font-size: 1rem; transition: color 0.2s ease-in-out; } .nav-link:hover { color: #007bff; } /* Responsive toggle button */ .navbar-toggler { display: none; background: none; border: none; font-size: 1.5rem; cursor: pointer; } .navbar-toggler-icon { display: inline-block; width: 1.5em; height: 1.5em; vertical-align: middle; background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); background-repeat: no-repeat; background-position: center; background-size: 100%; } /* Media query for responsive design */ @media (max-width: 767px) { .navbar-collapse { display: none; width: 100%; } .navbar-collapse.show { display: block; } .navbar-nav { flex-direction: column; width: 100%; } .nav-item { margin: 10px 0; } .navbar-toggler { display: block; } .container-fluid { flex-wrap: wrap; } .navbar-brand { flex-grow: 1; } } /* Specific styles for your layout */ .navbar-nav.justify-content-center { flex-grow: 1; justify-content: center; } .navbar-nav.ms-auto { justify-content: flex-end; margin-left: auto !important; } .logout .nav-link { color: #dc3545; } .logout .nav-link:hover { color: #a71d2a; } /* #endregion navbar */ /* #endregion bootstrap ==> */