* { font-family: -apple-system, BlinkMacSystemFont, sans-serif; } body { margin: 0 8vw; background-color: var(--background-color); color: var(--text-color); --text-color: rgba(0,0,0,0.87); --opaque-text-color:black; --disabled-text-color: rgba(16, 12, 12, 0.54); --hover-background-color: rgba(16, 12, 12, 0.07); --image-placeholder-color: var(--hover-background-color); --background-color:white; } .thumbnail { width: 100%; padding-top: 61.8%; max-height:1vh; background-size: cover; background-position: center; margin-bottom:2em; box-sizing: border-box; transition: opacity 200ms ease-out; opacity:0; /* margin: 0 -2em; */ } .ingredients:hover .noun { /* text-decoration:underline; */ } img.publisher { max-width: 5em; /* margin-top: -0.5em; */ /* transform:scale(0.7); */ float:right; } .recipe { max-width: 50em; margin: auto; line-height: 125%; } .columns { display: flex; gap: 3em; margin-bottom: 4em; align-content: center; justify-content: center; flex-direction: row-reverse;margin-top: 1em;} header { gap: 2em; margin-bottom: 2em; /* padding-left: 18em; */ } h1 { margin-top: 0.3em; margin-bottom:0.3em; line-height:125%; font-weight:500; } .noun.hovered { background-color:rgba(255, 221, 0, 0.608); } .step.hovered, .substep.hovered ~ *, .ingredient.hovered { background-color:#f1f1f1; } .ingredient.hovered { background-color: rgba(255, 221, 0, 0.608); } .metadata { display: flex; flex-wrap: wrap; gap: 0.5em 1em; margin-bottom: 1em; line-height:24px; } ul.step { padding-inline-start: 0; list-style-type:none; padding: 0;margin: 0em; } .instructions:not(.numbered) .number { display: none; } span.number { margin-left: -27px; float: left; border: 1.5px solid var(--text-color); font-weight: 800; border-radius:10em; width: 16px; height: 16px; text-align: center; font-size: 10px; line-height: 16px; opacity: 0.7; user-select: none; /* background: black; */ } .complete span.number, li:hover span.number { color:transparent; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='48' width='48'%3E%3Cpath d='M18.9 36.9 6.5 24.5 9.9 21.1 18.9 30.1 38.05 10.95 41.45 14.35Z'/%3E%3C/svg%3E"); background-size:cover; } .complete span.number { border-color:transparent; } .number.big { font-size:8px; } li { padding: 0.33em 0.5em; margin-left: -0.5em; } .ingredient, li { border-radius: 2px; } .ingredient:hover, li:hover { background-color:rgba(0,0,0,0.1); } .spacer { flex-grow: 1000; } .metadata img { width:16px; vertical-align: middle; margin-top: -4px; margin-right: 4px; opacity:0.6; } /* .metadata div:after { content: "•"; margin-left: 1em; margin-right: 1em; } */ /* .yield:before { background-image: url("recipe/restaurant_black_24dp.svg"); } .time:before, .yield:before { content:" "; width: 16px; /* height:16px; */ /* background-size: contain; float:left; margin-right:4px; background-repeat: no-repeat; background-position: center; } */ .time:before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='22' fill='none' viewBox='0 0 18 22'%3E%3Cpath fill='%23000' d='M4.031 17.953C5.406 19.328 7.063 20.016 9 20.016c1.938 0 3.578-.688 4.922-2.063 1.375-1.375 2.062-3.031 2.062-4.969 0-1.937-.687-3.578-2.062-4.921C12.578 6.687 10.937 6 9 6c-1.938 0-3.594.688-4.969 2.063-1.343 1.343-2.015 2.984-2.015 4.921 0 1.938.671 3.594 2.015 4.97zm12-10.547c.532.688.985 1.578 1.36 2.672.406 1.063.609 2.031.609 2.906 0 2.47-.875 4.594-2.625 6.375-1.75 1.75-3.875 2.625-6.375 2.625s-4.625-.875-6.375-2.625C.875 17.58 0 15.453 0 12.984c0-2.468.875-4.578 2.625-6.328C4.375 4.875 6.5 3.984 9 3.984c.844 0 1.813.204 2.906.61C13.031 5 13.937 5.469 14.625 6l1.406-1.453c.5.406.969.875 1.407 1.406L16.03 7.406zm-8.015 6.61v-6h1.968v6H8.016zM12 .984V3H6V.984h6z'/%3E%3C/svg%3E%0A"); } */ .time { background-size:18px; background-repeat:no-repeat; /* text-transform: uppercase; */ /* margin-bottom: 1em; */ } .ingredients { font-weight: 600; font-size: 80%; /* position:sticky; */ /* top: 0px; */ /* padding-top: 1em; */ flex: 0 1 35%; /* color: rgba(0,0,0,0.8); */ /* color:rgb(0, 118, 173); */ } .noun { font-weight: 600; color: var(--opaque-text-color); } .complete .noun { color:var(--disabled-text-color); } li:hover .noun { text-decoration: 1px dotted underline; /* background-color: var(--hover-background-color); */ } .instructions { white-space: pre-wrap; /* line-height: 125%; */ /* font-size: 100%; */ flex: 0 1 65%; /* margin-top: -0.7em; */ } .instructions.numbered li { padding-left: 2em; } .substep { margin-bottom: 1em; /* display: inline; */ } .ingredient { padding: .33em 0em; margin: 0 0em 0 -3em; line-height: 1.25em; /* opacity: 0.75; */ cursor: pointer; padding-left: 3em; } .ingredients .yield { margin-bottom: 1.5em; font-weight:bold; text-transform: uppercase; margin-left:2em; } .ingredients .quantity { float: left; margin-left: -2.2em; min-width: 1.8em; text-align: right; margin-right: 0.3em; } .ingredient.complete, li.complete { text-decoration: line-through; color:var(--disabled-text-color); text-decoration: line-through; /*noinspection CssOverwrittenProperties*/ text-decoration: rgba(0,0,0,0.75) solid 0.5px line-through; /* Ignored in CSS1/CSS2 UAs */ } .ingredient:hover { opacity: 1.0; background-color: rgba(128, 128, 128, 0.1) } .step { max-width: 80em; cursor: pointer; /* border:1px solid red; */ margin-bottom: 1em; } .instructions hr { width: 5em; height: 0.5px; background-color: currentColor; opacity: 1; border: none; margin: 0.25em 0; } .instructions hr:first-child { display:none; } hr { /* width: 100px; float: left; height: 0.5px; background-color: currentColor; opacity: 0.54; */ } .actions { display: flex; gap: 0.5em 1em; line-height:24px; margin-left: -4px; } a.action { border-radius:50%; cursor: pointer; width: 1.5em; height: 1.5em; /* display: flex; align-items: center; justify-content: center; */ text-align: center; line-height: 1.5em; background-color: var(--hover-background-color); } a.action:hover { background-color:var(--hover-background-color); } a.action:hover:not(:active) .icon { opacity:1.0; } a.action .icon { margin-right: 0; opacity: 1.0; } @media screen and (max-width: 520px) { .instructions hr:first-child { display:block; } #thumbnail-container { margin: 0 -8vw; background-color: var(--image-placeholder-color); } #thumbnail { padding-top: 56.25%; } /* some CSS here */ .columns { flex-direction: column; gap:0; } .ingredient, .instructions, header { padding: 0 0em; } .ingredient { margin: 0; margin-left:2em; margin-bottom:0.67em; } .ingredients .yield { margin-left:3em; } } .metadata .icon { font-size: 15px;vertical-align: middle;margin-top: -4px;margin-right: 4px;opacity: .6; color:var(--text-color); user-select: none; } @media (prefers-color-scheme: dark) { body { --text-color:white; --opaque-text-color:white; --hover-background-color:rgba(255,255,255, 0.14); --background-color:#222; --disabled-text-color: rgba(255,255,255, 0.54); } } @media print { body { font-size: 14px; min-height:100vh; } .print-hide { display: none; } @page { size: auto; /* auto is the initial value */ /* margin: 1cm; */ } a[href]:after { content: none !important; } img[src]:after { content: none !important; } } @media not print { .print-show { display:none; } } .instructions.numbered hr {margin: 0.7em -1px;height: 1.5px;opacity: 0.2;width: auto;} .instructions.numbered {/* margin-top: -1.6em; */} img.qr { margin-top:2em; position:absolute; bottom:0; right:0; width:2in; } @media screen and (max-width: 1199px) { #thumbnail { filter:none !important; transform: none !important; } } @media screen and (min-width: 1200px) { body { width:auto; margin:0; } .recipe { flex-direction: row; display: flex; max-width: unset; } #thumbnail-container { width: 100%;height: 100vh;position: sticky;top: 0; overflow:hidden; } .thumbnail { max-height: 100vh; height: 100vh; } .recipe-content { max-width:50em; padding: 4em; } }