/****************************************************************************** => Fonts *******************************************************************************/ /****************************************************************************** => Source Code Pro *******************************************************************************/ @font-face { font-family: 'Source Code Pro'; font-style: normal; font-weight: 400; src: local('Source Code Pro'), url('https://static.danielcortes.xyz/fonts/SourceCodePro/SourceCodePro-Regular.ttf') format('truetype'); } @font-face { font-family: 'Source Code Pro'; font-style: normal; font-weight: 700; src: local('Source Code Pro'), url('https://static.danielcortes.xyz/fonts/SourceCodePro/SourceCodePro-Bold.ttf') format('truetype'); } /****************************************************************************** => Source Serif Pro *******************************************************************************/ @font-face { font-family: 'Source Serif Pro'; font-style: normal; font-weight: 400; src: local('Source Serif Pro'), url('https://static.danielcortes.xyz/fonts/SourceSerifPro/SourceSerifPro-Regular.ttf') format('truetype'); } @font-face { font-family: 'Source Serif Pro'; font-style: normal; font-weight: 700; src: local('Source Serif Pro'), url('https://static.danielcortes.xyz/fonts/SourceSerifPro/SourceSerifPro-Bold.ttf') format('truetype'); } /****************************************************************************** => Source Sans Pro *******************************************************************************/ @font-face { font-family: 'Source Sans Pro'; font-style: normal; font-weight: 400; src: local('Source Sans Pro'), url('https://static.danielcortes.xyz/fonts/SourceSansPro/SourceSansPro-Regular.ttf') format('truetype'); } @font-face { font-family: 'Source Sans Pro'; font-style: normal; font-weight: 700; src: local('Source Sans Pro'), url('https://static.danielcortes.xyz/fonts/SourceSansPro/SourceSansPro-Bold.ttf') format('truetype'); } .codehilite .hll { background-color: #f1fa8c } .codehilite { background: #282a36; color: #f8f8f2 } .codehilite .c { color: #6272a4 } /* Comment */ .codehilite .err { color: #f8f8f2 } /* Error */ .codehilite .g { color: #f8f8f2 } /* Generic */ .codehilite .k { color: #ff79c6 } /* Keyword */ .codehilite .l { color: #f8f8f2 } /* Literal */ .codehilite .n { color: #f8f8f2 } /* Name */ .codehilite .o { color: #ff79c6 } /* Operator */ .codehilite .x { color: #f8f8f2 } /* Other */ .codehilite .p { color: #f8f8f2 } /* Punctuation */ .codehilite .ch { color: #6272a4 } /* Comment.Hashbang */ .codehilite .cm { color: #6272a4 } /* Comment.Multiline */ .codehilite .cp { color: #ff79c6 } /* Comment.Preproc */ .codehilite .cpf { color: #6272a4 } /* Comment.PreprocFile */ .codehilite .c1 { color: #6272a4 } /* Comment.Single */ .codehilite .cs { color: #6272a4 } /* Comment.Special */ .codehilite .gd { color: #8b080b } /* Generic.Deleted */ .codehilite .ge { color: #f8f8f2; text-decoration: underline } /* Generic.Emph */ .codehilite .gr { color: #f8f8f2 } /* Generic.Error */ .codehilite .gh { color: #f8f8f2; font-weight: bold } /* Generic.Heading */ .codehilite .gi { color: #f8f8f2; font-weight: bold } /* Generic.Inserted */ .codehilite .go { color: #44475a } /* Generic.Output */ .codehilite .gp { color: #f8f8f2 } /* Generic.Prompt */ .codehilite .gs { color: #f8f8f2 } /* Generic.Strong */ .codehilite .gu { color: #f8f8f2; font-weight: bold } /* Generic.Subheading */ .codehilite .gt { color: #f8f8f2 } /* Generic.Traceback */ .codehilite .kc { color: #ff79c6 } /* Keyword.Constant */ .codehilite .kd { color: #8be9fd; font-style: italic } /* Keyword.Declaration */ .codehilite .kn { color: #ff79c6 } /* Keyword.Namespace */ .codehilite .kp { color: #ff79c6 } /* Keyword.Pseudo */ .codehilite .kr { color: #ff79c6 } /* Keyword.Reserved */ .codehilite .kt { color: #8be9fd } /* Keyword.Type */ .codehilite .ld { color: #f8f8f2 } /* Literal.Date */ .codehilite .m { color: #bd93f9 } /* Literal.Number */ .codehilite .s { color: #f1fa8c } /* Literal.String */ .codehilite .na { color: #50fa7b } /* Name.Attribute */ .codehilite .nb { color: #8be9fd; font-style: italic } /* Name.Builtin */ .codehilite .nc { color: #50fa7b } /* Name.Class */ .codehilite .no { color: #f8f8f2 } /* Name.Constant */ .codehilite .nd { color: #f8f8f2 } /* Name.Decorator */ .codehilite .ni { color: #f8f8f2 } /* Name.Entity */ .codehilite .ne { color: #f8f8f2 } /* Name.Exception */ .codehilite .nf { color: #50fa7b } /* Name.Function */ .codehilite .nl { color: #8be9fd; font-style: italic } /* Name.Label */ .codehilite .nn { color: #f8f8f2 } /* Name.Namespace */ .codehilite .nx { color: #f8f8f2 } /* Name.Other */ .codehilite .py { color: #f8f8f2 } /* Name.Property */ .codehilite .nt { color: #ff79c6 } /* Name.Tag */ .codehilite .nv { color: #8be9fd; font-style: italic } /* Name.Variable */ .codehilite .ow { color: #ff79c6 } /* Operator.Word */ .codehilite .w { color: #f8f8f2 } /* Text.Whitespace */ .codehilite .mb { color: #bd93f9 } /* Literal.Number.Bin */ .codehilite .mf { color: #bd93f9 } /* Literal.Number.Float */ .codehilite .mh { color: #bd93f9 } /* Literal.Number.Hex */ .codehilite .mi { color: #bd93f9 } /* Literal.Number.Integer */ .codehilite .mo { color: #bd93f9 } /* Literal.Number.Oct */ .codehilite .sa { color: #f1fa8c } /* Literal.String.Affix */ .codehilite .sb { color: #f1fa8c } /* Literal.String.Backtick */ .codehilite .sc { color: #f1fa8c } /* Literal.String.Char */ .codehilite .dl { color: #f1fa8c } /* Literal.String.Delimiter */ .codehilite .sd { color: #f1fa8c } /* Literal.String.Doc */ .codehilite .s2 { color: #f1fa8c } /* Literal.String.Double */ .codehilite .se { color: #f1fa8c } /* Literal.String.Escape */ .codehilite .sh { color: #f1fa8c } /* Literal.String.Heredoc */ .codehilite .si { color: #f1fa8c } /* Literal.String.Interpol */ .codehilite .sx { color: #f1fa8c } /* Literal.String.Other */ .codehilite .sr { color: #f1fa8c } /* Literal.String.Regex */ .codehilite .s1 { color: #f1fa8c } /* Literal.String.Single */ .codehilite .ss { color: #f1fa8c } /* Literal.String.Symbol */ .codehilite .bp { color: #f8f8f2; font-style: italic } /* Name.Builtin.Pseudo */ .codehilite .fm { color: #50fa7b } /* Name.Function.Magic */ .codehilite .vc { color: #8be9fd; font-style: italic } /* Name.Variable.Class */ .codehilite .vg { color: #8be9fd; font-style: italic } /* Name.Variable.Global */ .codehilite .vi { color: #8be9fd; font-style: italic } /* Name.Variable.Instance */ .codehilite .vm { color: #8be9fd; font-style: italic } /* Name.Variable.Magic */ .codehilite .il { color: #bd93f9 } /* Literal.Number.Integer.Long */ /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */ /* Document ========================================================================== */ /** * 1. Correct the line height in all browsers. * 2. Prevent adjustments of font size after orientation changes in iOS. */ html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ } /* Sections ========================================================================== */ /** * Remove the margin in all browsers. */ body { margin: 0; } /** * Render the `main` element consistently in IE. */ main { display: block; } /** * Correct the font size and margin on `h1` elements within `section` and * `article` contexts in Chrome, Firefox, and Safari. */ h1 { font-size: 2em; margin: 0.67em 0; } /* Grouping content ========================================================================== */ /** * 1. Add the correct box sizing in Firefox. * 2. Show the overflow in Edge and IE. */ hr { box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ } /** * 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. */ pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ } /* Text-level semantics ========================================================================== */ /** * Remove the gray background on active links in IE 10. */ a { background-color: transparent; } /** * 1. Remove the bottom border in Chrome 57- * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */ abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ text-decoration: underline dotted; /* 2 */ } /** * Add the correct font weight in Chrome, Edge, and Safari. */ b, strong { font-weight: bolder; } /** * 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. */ code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ } /** * Add the correct font size in all browsers. */ small { font-size: 80%; } /** * Prevent `sub` and `sup` elements from affecting the line height in * all browsers. */ sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } sub { bottom: -0.25em; } sup { top: -0.5em; } /* Embedded content ========================================================================== */ /** * Remove the border on images inside links in IE 10. */ img { border-style: none; } /* Forms ========================================================================== */ /** * 1. Change the font styles in all browsers. * 2. Remove the margin in Firefox and Safari. */ button, input, optgroup, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ } /** * Show the overflow in IE. * 1. Show the overflow in Edge. */ button, input { /* 1 */ overflow: visible; } /** * Remove the inheritance of text transform in Edge, Firefox, and IE. * 1. Remove the inheritance of text transform in Firefox. */ button, select { /* 1 */ text-transform: none; } /** * Correct the inability to style clickable types in iOS and Safari. */ button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; } /** * Remove the inner border and padding in Firefox. */ button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; } /** * Restore the focus styles unset by the previous rule. */ button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; } /** * Correct the padding in Firefox. */ fieldset { padding: 0.35em 0.75em 0.625em; } /** * 1. Correct the text wrapping in Edge and IE. * 2. Correct the color inheritance from `fieldset` elements in IE. * 3. Remove the padding so developers are not caught out when they zero out * `fieldset` elements in all browsers. */ legend { box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ } /** * Add the correct vertical alignment in Chrome, Firefox, and Opera. */ progress { vertical-align: baseline; } /** * Remove the default vertical scrollbar in IE 10+. */ textarea { overflow: auto; } /** * 1. Add the correct box sizing in IE 10. * 2. Remove the padding in IE 10. */ [type="checkbox"], [type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ } /** * Correct the cursor style of increment and decrement buttons in Chrome. */ [type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; } /** * 1. Correct the odd appearance in Chrome and Safari. * 2. Correct the outline style in Safari. */ [type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ } /** * Remove the inner padding in Chrome and Safari on macOS. */ [type="search"]::-webkit-search-decoration { -webkit-appearance: none; } /** * 1. Correct the inability to style clickable types in iOS and Safari. * 2. Change font properties to `inherit` in Safari. */ ::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ } /* Interactive ========================================================================== */ /* * Add the correct display in Edge, IE 10+, and Firefox. */ details { display: block; } /* * Add the correct display in all browsers. */ summary { display: list-item; } /* Misc ========================================================================== */ /** * Add the correct display in IE 10+. */ template { display: none; } /** * Add the correct display in IE 10. */ [hidden] { display: none; } :root{ --background-color: hsl(10, 20%, 98%); --foreground-color: hsl(10, 10%, 13%); --primary-color: hsl(200, 90%, 40%); --highlight-color: hsl(290, 86%, 43%); --light-color: hsl(10, 10%, 40%); } body { background-color: var(--background-color); color: var(--foreground-color); overflow-y: scroll; font-family: 'Source Sans Pro', sans-serif; font-size: 1.5em; } @media only screen and (max-width: 800px) { body { font-size: 1em; } } .container { max-width: 80ch; padding: 2ch; padding-bottom: 5em; margin: auto; } h1 { margin: 1em 0; } time { color: var(--light-color); } p { line-height: 1.5em; text-align: justify; } a, a:visited { color: var(--highlight-color); text-decoration: none; } a:hover { text-decoration: underline; } img { max-width: 100%; cursor: pointer; } code { font-size: 1.2em; } .codehilite { font-family: 'Source Code Pro', monospace; font-size: 1.2em; border: none; border-radius: 5px; overflow-x: auto; } .codehilite pre { margin: 1em; } /****************************************************************************** => FONTS *******************************************************************************/ @font-face{font-family:'Source Code Pro';font-style:normal;font-weight:400;src:local('Source Code Pro'),url(https://static.danielcortes.xyz/fonts/SourceCodePro/SourceCodePro-Regular.woff2) format('woff2');font-display:swap} @font-face{font-family:'Source Code Pro';font-style:normal;font-weight:700;src:local('Source Code Pro'),url(https://static.danielcortes.xyz/fonts/SourceCodePro/SourceCodePro-Bold.woff2) format('woff2');font-display:swap} @font-face{font-family:'Source Serif Pro';font-style:normal;font-weight:400;src:local('Source Serif Pro'),url(https://static.danielcortes.xyz/fonts/SourceSerifPro/SourceSerifPro-Regular.woff2) format('woff2')} @font-face{font-family:'Source Serif Pro';font-style:normal;font-weight:700;src:local('Source Serif Pro'),url(https://static.danielcortes.xyz/fonts/SourceSerifPro/SourceSerifPro-Bold.woff2) format('woff2');font-display:swap} @font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:400;src:local('Source Sans Pro'),url(https://static.danielcortes.xyz/fonts/SourceSansPro/SourceSansPro-Regular.woff2) format('woff2');font-display:swap} @font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:700;src:local('Source Sans Pro'),url(https://static.danielcortes.xyz/fonts/SourceSansPro/SourceSansPro-Bold.woff2) format('woff2');font-display:swap} /****************************************************************************** => CODEHILITE *******************************************************************************/ .codehilite .hll{background-color:#f1fa8c}.codehilite{background:#282a36;color:#f8f8f2}.codehilite .c{color:#6272a4}.codehilite .err,.codehilite .g{color:#f8f8f2}.codehilite .k{color:#ff79c6}.codehilite .l,.codehilite .n{color:#f8f8f2}.codehilite .o{color:#ff79c6}.codehilite .p,.codehilite .x{color:#f8f8f2}.codehilite .ch,.codehilite .cm{color:#6272a4}.codehilite .cp{color:#ff79c6}.codehilite .c1,.codehilite .cpf,.codehilite .cs{color:#6272a4}.codehilite .gd{color:#8b080b}.codehilite .ge{color:#f8f8f2;text-decoration:underline}.codehilite .gr{color:#f8f8f2}.codehilite .gh,.codehilite .gi{color:#f8f8f2;font-weight:700}.codehilite .go{color:#44475a}.codehilite .gp,.codehilite .gs,.codehilite .gt{color:#f8f8f2}.codehilite .gu{color:#f8f8f2;font-weight:700}.codehilite .kc{color:#ff79c6}.codehilite .kd{color:#8be9fd;font-style:italic}.codehilite .kn,.codehilite .kp,.codehilite .kr{color:#ff79c6}.codehilite .kt{color:#8be9fd}.codehilite .ld{color:#f8f8f2}.codehilite .m{color:#bd93f9}.codehilite .s{color:#f1fa8c}.codehilite .na{color:#50fa7b}.codehilite .nb{color:#8be9fd;font-style:italic}.codehilite .nc{color:#50fa7b}.codehilite .nd,.codehilite .ne,.codehilite .ni,.codehilite .no{color:#f8f8f2}.codehilite .nf{color:#50fa7b}.codehilite .nl{color:#8be9fd;font-style:italic}.codehilite .nn,.codehilite .nx,.codehilite .py{color:#f8f8f2}.codehilite .nt{color:#ff79c6}.codehilite .nv{color:#8be9fd;font-style:italic}.codehilite .ow{color:#ff79c6}.codehilite .w{color:#f8f8f2}.codehilite .mb,.codehilite .mf,.codehilite .mh,.codehilite .mi,.codehilite .mo{color:#bd93f9}.codehilite .dl,.codehilite .s1,.codehilite .s2,.codehilite .sa,.codehilite .sb,.codehilite .sc,.codehilite .sd,.codehilite .se,.codehilite .sh,.codehilite .si,.codehilite .sr,.codehilite .ss,.codehilite .sx{color:#f1fa8c}.codehilite .bp{color:#f8f8f2;font-style:italic}.codehilite .fm{color:#50fa7b}.codehilite .vc,.codehilite .vg,.codehilite .vi,.codehilite .vm{color:#8be9fd;font-style:italic}.codehilite .il{color:#bd93f9} /****************************************************************************** => NORMALIZE.CSS *******************************************************************************/ button,hr,input{overflow:visible}progress,sub,sup{vertical-align:baseline}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}details,main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{padding:.35em .75em .625em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}[hidden],template{display:none} /****************************************************************************** => MAIN STYLES *******************************************************************************/ :root{ --background-color: hsl(10, 20%, 98%); --foreground-color: hsl(10, 10%, 13%); --primary-color: hsl(200, 90%, 40%); --highlight-color: hsl(290, 86%, 43%); --light-color: hsl(10, 10%, 40%); } body { background-color: var(--background-color); color: var(--foreground-color); overflow-y: scroll; font-family: Source Sans Pro; font-size: 1em; } @media only screen and (max-width: 800px) { body { font-size: 1em; } } .container { max-width: 80ch; padding: 2em 0; margin: auto; } h1 { margin: 0; } time { color: var(--light-color); } p { line-height: 1.5em; text-align: justify; } a, a:visited { color: var(--highlight-color); text-decoration: none; } a:hover { text-decoration: underline; } img { max-width: 100%; cursor: pointer; } code { font-family: Source Code Pro; font-size: 1em; } .codehilite { border: none; border-radius: 5px; overflow-x: auto; } .codehilite pre { margin: 1em; }