@use 'global/globalCssVariables.module' as global; $linkGap: 3px; $headerHeight: 20px; $resizeHandler: 8px; .documentDecorations { position: absolute; z-index: 2000; // Rotation handler .documentDecorations-rotation { border-radius: 100%; height: 30px; width: 30px; right: -40px; bottom: -20px; //top: calc(50% - 15px); position: absolute; pointer-events: all; cursor: pointer; background: transparent; display: flex; justify-content: center; align-items: center; text-align: center; font-size: 30px; opacity: 0.6; &:hover { opacity: 1; } } .documentDecorations-rotationCenter { position: absolute; width: 9px; height: 9px; left: -4.5px; top: -4.5px; pointer-events: all; background: green; border-radius: 50%; } .documentDecorations-tagsView { position: absolute; width: 100%; pointer-events: all; border-radius: 50%; top: 30px; // offset by height of documentButtonBar so that items can be clicked without overlap interference color: black; } } .documentDecorations-container { position: absolute; top: 0px; left: 0px; transform-origin: 50% calc(50% + 10px); display: grid; grid-template-rows: $headerHeight $resizeHandler 1fr $resizeHandler; grid-template-columns: $resizeHandler 1fr $resizeHandler; pointer-events: none; .documentDecorations-topbar { display: flex; grid-column-start: 1; grid-column-end: 4; flex-direction: row; gap: 2px; pointer-events: all; color: black; cursor: move; .documentDecorations-openButton { display: flex; align-items: center; justify-content: center; background: #3ce312; border: solid 1.5px #0a620a; color: #3ce312; transition: 0.1s ease; font-size: 11px; opacity: 1; pointer-events: all; width: 20px; height: 20px; min-width: 20px; border-radius: 100%; opacity: 0.5; cursor: pointer; &:hover { color: #02600d; opacity: 1; } } .documentDecorations-closeWrapper { display: flex; .documentDecorations-closeButton { display: flex; align-items: center; justify-content: center; background: #fb9d75; border: solid 1.5px #a94442; color: #fb9d75; transition: 0.1s ease; opacity: 1; pointer-events: all; width: 20px; height: 20px; min-width: 20px; border-radius: 100%; opacity: 0.5; cursor: pointer; &:hover { color: #a94442; opacity: 1; width: 20px; min-width: 20px; } > svg { margin: 0px; } } .documentDecorations-minimizeButton { display: none; align-items: center; justify-content: center; background: #ffdd00; border: solid 1.5px #a94442; color: #ffdd00; transition: 0.1s ease; font-size: 11px; opacity: 1; grid-column: 2; pointer-events: all; width: 20px; height: 20px; min-width: 20px; border-radius: 100%; opacity: 0.5; cursor: pointer; &:hover { color: #a94442; opacity: 1; } > svg { margin: 0px; } } &:hover { width: 40px; min-width: 40px; .documentDecorations-minimizeButton { display: flex; } } } .documentDecorations-lockButton { display: flex; align-items: center; justify-content: center; background: grey; border: solid 1.5px rgb(72, 71, 71); color: grey; transition: 0.1s ease; opacity: 1; pointer-events: all; width: 20px; height: 20px; min-width: 20px; border-radius: 100%; opacity: 0.5; cursor: pointer; &:hover { color: rgb(72, 71, 71); opacity: 1; } > svg { margin: 0px; } } .documentDecorations-title { opacity: 1; width: 100%; grid-column: 3; pointer-events: auto; overflow: hidden; text-align: center; display: flex; height: 20px; border-radius: 8px; gap: 2px; outline: none; border: none; opacity: 0.3; &:hover { opacity: 1; } .documentDecorations-titleSpan { width: 100%; border-radius: 8px; background: global.$contextMenu-zindex; display: inline-block; cursor: move; } } .documentDecorations-titleBackground { background: global.$light-gray; border-radius: 8px; width: 100%; height: 100%; position: absolute; } } .documentDecorations-share { background: none; opacity: 1; grid-column: 3; pointer-events: auto; min-width: fit-content; text-align: center; display: flex; height: 21px; opacity: 0.3; &:hover { opacity: 1; } .checkbox { display: inline; .checkbox-box { display: inline; position: relative; top: -2.5; left: 35px; zoom: 0.7; } & .checkbox-text { display: inline; position: relative; top: 1.5; font-size: 8px; } } .documentDecorations-shareNone { width: calc(100% + 10px); background: grey; color: rgb(71, 71, 71); border-radius: 8px; border: 2px solid rgb(71, 71, 71); } .documentDecorations-shareEdit, .documentDecorations-shareAdmin { width: calc(100% + 10px); background: rgb(254, 254, 199); color: rgb(75, 75, 5); border-radius: 8px; border: 2px solid rgb(75, 75, 5); } .documentDecorations-shareAugment { width: calc(100% + 10px); background: rgb(208, 255, 208); color: rgb(19, 80, 19); border-radius: 8px; border: 2px solid rgb(19, 80, 19); } .documentDecorations-shareView { width: calc(100% + 10px); background: rgb(213, 213, 255); color: rgb(25, 25, 101); border-radius: 8px; border: 2px solid rgb(25, 25, 101); } .documentDecorations-shareNot-Shared { width: calc(100% + 10px); background: rgb(255, 207, 207); color: rgb(146, 58, 58); border-radius: 8px; border: 2px solid rgb(146, 58, 58); } } .documentDecorations-centerCont { grid-column: 2; background: none; } .documentDecorations-selectorButton { pointer-events: auto; height: 15px; width: 15px; left: -20px; top: 20px; display: inline-block; position: absolute; opacity: 0.5; } .documentDecorations-radius { pointer-events: auto; opacity: 1; transform: translate(10px, 10px); grid-row: 4; grid-column: 3; } .documentDecorations-topLeftResizer, .documentDecorations-topRightResizer, .documentDecorations-bottomLeftResizer, .documentDecorations-bottomRightResizer, .documentDecorations-leftResizer, .documentDecorations-topResizer, .documentDecorations-bottomResizer, .documentDecorations-rightResizer { pointer-events: auto; background: global.$medium-gray-dim; opacity: 0.2; &:hover { opacity: 1; } } .documentDecorations-topLeftResizer, .documentDecorations-leftResizer, .documentDecorations-bottomLeftResizer { grid-column: 1; } .documentDecorations-topResizer, .documentDecorations-bottomResizer { grid-column: 2; } .documentDecorations-bottomRightResizer, .documentDecorations-topRightResizer, .documentDecorations-rightResizer { grid-column: 3; } // Border radius handler .documentDecorations-borderRadius { position: absolute; border-radius: 100%; left: 7px; top: 7px; background: global.$medium-gray; height: 10px; width: 10px; opacity: 0.5; pointer-events: all; cursor: nwse-resize; } .documentDecorations-lock { position: relative; background: black; color: rgb(145, 144, 144); height: 20px; width: 20px; pointer-events: all; margin: auto; display: flex; align-items: center; border-radius: 100%; cursor: default; svg { width: 10px; height: 10px; margin: auto; } } .documentDecorations-rotationPath { position: absolute; width: 100%; height: 0px; transform: translate(0px, -25%); padding-bottom: 100%; border-radius: 100%; border: solid global.$medium-gray 10px; } .documentDecorations-topLeftResizer, .documentDecorations-bottomRightResizer { cursor: nwse-resize; background: unset; transform: scale(2); } .documentDecorations-topLeftResizer { border-left: 2px solid; border-top: solid 2px; } .documentDecorations-bottomRightResizer { border-right: 2px solid; border-bottom: solid 2px; } .documentDecorations-topLeftResizer:hover, .documentDecorations-bottomRightResizer:hover { opacity: 1; } .documentDecorations-topLeftResizer, .documentDecorations-leftResizer, .documentDecorations-bottomLeftResizer { grid-column: 1; } .documentDecorations-topResizer, .documentDecorations-bottomResizer { grid-column: 2; } .documentDecorations-bottomRightResizer, .documentDecorations-topRightResizer, .documentDecorations-rightResizer { grid-column: 3; } .documentDecorations-topLeftResizer, .documentDecorations-bottomRightResizer { cursor: nwse-resize; background: unset; } .documentDecorations-topLeftResizer { border-left: 2px solid; border-top: solid 2px; } .documentDecorations-bottomRightResizer { border-right: 2px solid; border-bottom: solid 2px; } .documentDecorations-topLeftResizer:hover, .documentDecorations-bottomRightResizer:hover { opacity: 1; } // .documentDecorations-bottomRightResizer { // grid-row: 4; // } .documentDecorations-topRightResizer, .documentDecorations-bottomLeftResizer { cursor: nesw-resize; background: unset; transform: scale(2); } .documentDecorations-topRightResizer { border-right: 2px solid; border-top: 2px solid; } .documentDecorations-bottomLeftResizer { border-left: 2px solid; border-bottom: 2px solid; } .documentDecorations-topRightResizer:hover, .documentDecorations-bottomLeftResizer:hover { opacity: 1; } .documentDecorations-topResizer, .documentDecorations-bottomResizer { cursor: ns-resize; } .documentDecorations-leftResizer, .documentDecorations-rightResizer { cursor: ew-resize; } .focus-visible { margin-left: 0px; } } .documentDecorations-container.showNothing { margin-top: $headerHeight; grid-template-rows: $resizeHandler 1fr $resizeHandler; } .documentDecorations-background { background: lightblue; position: absolute; opacity: 0.1; } .linkFlyout { grid-column: 2/4; } .linkButton-empty:hover { background: global.$medium-gray; transform: scale(1.05); cursor: pointer; } .linkButton-nonempty:hover { background: global.$medium-gray; transform: scale(1.05); cursor: pointer; } .link-button-container { border-radius: 13px; width: max-content; height: auto; display: flex; flex-direction: row; z-index: 998; position: absolute; justify-content: center; align-items: center; gap: 5px; //top: 4px; background: global.$light-gray; opacity: 0.2; pointer-events: all; transition: opacity 1s; &:hover { transition: unset; opacity: 1; } } .linkButtonWrapper { pointer-events: auto; padding-right: 5px; width: 25px; } .linkButton-linker { height: 20px; width: 20px; text-align: center; border-radius: 50%; pointer-events: auto; color: global.$dark-gray; border: global.$dark-gray 1px solid; } .linkButton-linker:hover { cursor: pointer; transform: scale(1.05); } .linkButton-empty, .linkButton-nonempty { height: 20px; width: 20px; border-radius: 50%; opacity: 0.9; pointer-events: auto; background-color: global.$dark-gray; color: global.$white; text-transform: uppercase; letter-spacing: 2px; font-size: 75%; transition: transform 0.2s; text-align: center; display: flex; justify-content: center; align-items: center; &:hover { background: global.$medium-gray; transform: scale(1.05); cursor: pointer; } } .templating-menu { position: absolute; pointer-events: auto; text-transform: uppercase; letter-spacing: 2px; font-size: 75%; transition: transform 0.2s; text-align: center; display: flex; justify-content: center; align-items: center; } .documentdecorations-icon { margin: 0px; } .templating-button, .docDecs-tagButton { width: 20px; height: 20px; border-radius: 50%; opacity: 0.9; font-size: 14; background-color: global.$dark-gray; color: global.$white; text-align: center; cursor: pointer; &:hover { background: global.$medium-gray; transform: scale(1.05); } } #template-list { position: absolute; top: 25px; left: 0px; width: max-content; font-family: global.$sans-serif; font-size: 12px; background-color: global.$light-gray; padding: 2px 12px; list-style: none; .templateToggle, .chromeToggle { text-align: left; } input { margin-right: 10px; } } @-moz-keyframes spin { 100% { -moz-transform: rotate(360deg); } } @-webkit-keyframes spin { 100% { -webkit-transform: rotate(360deg); } } @keyframes spin { 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } } @keyframes shadow-pulse { 0% { box-shadow: 0 0 0 0px rgba(0, 0, 0, 0.8); } 100% { box-shadow: 0 0 0 10px rgba(0, 255, 0, 0); } }