reduced latency, sticky note in therapy view
[confetti] / templates / therapy.css.sh
1 #!/bin/sh
2
3 cat <<EOF
4 * { box-sizing: border-box; }
5 body {
6   overflow: scroll;
7   position: relative;
8   width: 100%;
9   margin: 0; padding: 0;
10   padding-top: 2em;
11 }
12
13 input.tab { display: none; }
14 input.tab + label.tab { display: block; }
15 input.tab + label.tab::before { content: '\25b8 \00a0'; float: left;}
16 input.tab:checked + label.tab::before { content: '\25be \00a0'; }
17 input.tab + label.tab + div.tab { display: none; }
18 input.tab:checked + label.tab + div.tab { display: block; }
19
20 input.color { display: none }
21 input.color + label{
22   display: inline-block;
23   width: 1em; height: 1em;
24   border: 1px solid black;
25 }
26 input.color:checked + label{ border-width: 3px;}
27 input.color[value="#000"] + label,
28 input.color[value="#888"] + label { background-color: #888;}
29 input.color[value="#00A"] + label { background-color: #00F;}
30 input.color[value="#0A0"] + label { background-color: #0F0;}
31 input.color[value="#0AA"] + label { background-color: #0FF;}
32 input.color[value="#A00"] + label { background-color: #F00;}
33 input.color[value="#A0A"] + label { background-color: #F0F;}
34 input.color[value="#AA0"] + label { background-color: #FF0;}
35 input.color[value="#FFF"] + label { background-color: #FFF;}
36
37 h1, label.tab, div.tab, fieldset.tab,
38 div.patient, div.prescription {
39   display: block;
40   width: 96%;
41   margin: 0 2%;
42 }
43
44 div.prescription span {
45   display: inline-block;
46   width: 50%;
47   margin-right: -.75ex;
48   vertical-align: top;
49 }
50 div.prescription span label { font-weight: bold; margin-right: 1ex;}
51 div.prescription span.prescno,
52 div.prescription span.catalogue {
53   width: 33%;
54   font-weight: bold;
55   margin-bottom: .5em;
56   padding: .5ex 1ex;
57 }
58
59 div.prescription label.checkbox,
60 div.prescription label.radio {
61   display: block;
62   padding-left: 1.25em;
63   font-size: 1em;
64   margin: .5em 0;
65 }
66
67 div.prescription label.checkbox:before,
68 div.prescription label.radio:before {
69   display: inline-block;
70   color: #000;
71   background-color: #FFF;
72   height: 1.375em; width: 1.125em;
73   padding: .125em 0 0 .375em;
74   margin: 0 .5em .25em -1.25em;
75   border: 1px solid #000;
76   vertical-align: middle;
77   content: ' ';
78 }
79 div.prescription label.radio:before { border-radius: .5em;}
80 div.prescription label.checkbox.checked:before,
81 div.prescription label.radio.checked:before { content: "\2713";}
82
83 div.prescription label[for=prescreviewed] {
84   margin-left: 1ex;
85   font-weight: bold;
86   text-decoration: underline;
87   background-color: #FCC;
88 }
89 div.prescription label[for=prescreviewed].checked {
90   font-weight: normal;
91   text-decoration: none;
92   background-color: transparent;
93 }
94
95 fieldset.color {
96   position: absolute;
97   bottom: 0; right: 0; width: 2em;
98   margin: .5em .5em .125em 2%;
99   border: none;
100   padding: 0;
101 }
102 fieldset.color > input.color + label {
103   width: 2em; height: 2em;
104 }
105 .dotmark {
106   max-width: 90%;
107   margin: .5em 1em .125em 2%; padding: 0;
108   text-align: left;
109   border: 1px solid black;
110 }
111 .dotmark.ov {
112   position: absolute;
113   left: 0; bottom: .25em;
114   z-index: 1;
115 }
116
117 @media(min-width: 800px){
118   h1, label.tab, div.tab, fieldset.tab,
119   div.patient, div.prescription {
120     width: 38%;
121     margin-right: 0;
122   }
123   fieldset.color { position: fixed; }
124   .dotmark {
125     position: fixed;
126     max-width: 52%;
127     max-height: 98%;
128     right: 2em; bottom: .25em;
129   }
130   .dotmark.ov {
131     position: fixed;
132     right: 2em; left: auto;
133   }
134 }
135
136 h1 {display: none;}
137
138 div.patient, div.prescription { margin-top: 1em; }
139 div.prescription {
140   border: 1px solid black;
141   background-color: #EEE;
142   padding: .125em 1.25ex .5em 1.25ex;
143 }
144 div > h2 { margin: 0; border-bottom: 1px solid black; }
145 div:nth-child(n+2) > a:first-of-type {
146   display: block;
147   margin: .125em 0 .5em 0;
148   text-decoration: none;
149 }
150
151 input.stickynote { display:none; }
152 input.stickynote + .stickynote {
153   position: fixed;
154   background-color: #FF8;
155   top: 4em; bottom: 4em;
156   left: -4.5em; width: 5em;
157   padding: 1ex;
158   max-height: 90%;
159   z-index: 2;
160 }
161 input.stickynote + .stickynote > * { display: none; }
162 input.stickynote + .stickynote > label {
163   position: absolute;
164   top: 0; bottom: 0;
165   display: block;
166   text-align: right;
167   font-weight: bold;
168 }
169 input.stickynote + .stickynote:hover {
170   left: -1ex;
171 }
172 input.stickynote:checked + .stickynote {
173   width: auto;
174   left: 1em;
175   right: 4em;
176   padding-top: .5ex;
177 }
178 input.stickynote:checked + .stickynote > textarea {
179   display: block;
180   position: absolute;
181   left; 0; right: 0; bottom: 0; top: 0;
182   width: 100%; height: 100%;
183   background-color: #FF8;
184   padding: 2em 1em;
185 }
186 input.stickynote:checked + .stickynote > button {
187   display: block;
188   position: absolute;
189   right: .5ex; bottom: .5ex;
190   z-index: 2;
191 }
192 input.stickynote:checked + .stickynote > label {
193   display: block;
194   position: static;
195   font-size: 0;
196 }
197 input.stickynote:checked + .stickynote > label:before {
198   position: absolute;
199   font-size: initial;
200   content: "x";
201   top: .5ex; right: .5ex;
202   padding: .125ex .75ex;
203   background-color: #000;
204   color: #FFF;
205   border-radius: 1ex;
206   z-index: 2;
207 }
208
209 fieldset.tab,
210 label.tab {
211   font-size: 1.25em;
212   font-weight: bold;
213   padding: .125em 1ex .25em 1ex;
214   color: #FFF;
215   background-color: #333;
216   margin-top: .125em;
217   text-align: right;
218   border: none;
219 }
220 label.heading {
221   background-color: #FFF;
222   margin-top: 1em;
223   border: 2px solid black;
224   border-bottom-width: 1px;
225   color: black;
226 }
227 label.heading > span {
228   text-decoration: underline;
229 }
230
231 fieldset.tab > *,
232 label > input,
233 label > span {
234   display: inline-block;
235   text-align: right;
236 }
237 .tab > .no {
238   width:  10%; float: left;
239   border: solid 1px #FFF;
240   background-color: #555;
241   border-radius: 2ex;
242   padding: 0;
243   text-align: center;
244 }
245 label.heading > span.no {
246   background-color: inherit;
247   border: none;
248 }
249 .tab > .date      { width: 30%; }
250 .tab > .therapist { width: 30%; }
251 .tab > .signature { width: 20%; }
252 label.tab > .signature { font-size: .75em; }
253 .tab > .signature > button { display: inline-block; margin: 0; }
254 /* fieldset.tab > button[type=submit] { width: 5%; text-align: center; margin-left: 5%;} */
255 fieldset.tab > button[type=submit] { height: 2em; color: #FFF; font-weight: bold;}
256 fieldset.tab > button[type=submit]::first-letter { font-size: 1.75em;}
257
258 .signature > button[value=pos],
259 .signature > button[value=neg] {
260   margin-bottom: .25em;
261   border: 1px solid black;
262   height: 1.5em; width: 1.5em;
263   vertical-align: top;
264   background-color: #FFF;
265   color: #000;
266   white-space: nowrap;
267 }
268 .signature > input[type=checkbox] {display: none;}
269 .signature > button[value=neg]::before { padding: 0 1ex 0 .25ex; content: "\2713"; }
270 .signature > button[value=pos]::before { padding: 0 1ex 0 .25ex; content: "\00a0 \00a0 \00a0"; }
271
272 input.tab + label.tab > input.date,
273 input.tab + label.tab > input.therapist {
274   display: none;
275 }
276 input.tab:checked + label.tab > input.date,
277 input.tab:checked + label.tab > input.therapist {
278   display: inline;
279 }
280 input.tab:checked + label.tab > span.date,
281 input.tab:checked + label.tab > span.therapist {
282   display: none;
283 }
284
285
286 div.tab {
287   border: 2px solid #333;
288   border-top-width: 1px;
289   margin-top: -1px;
290   padding: .25em .5ex;
291 }
292 div.tab > fieldset.note {
293   border: none;
294   margin: 0; padding: 0;
295 }
296 div.tab > fieldset.note > textarea {
297   display: block;
298   width: 95%; height: 8em;
299   margin: -8em 0 .5em 2em;
300   font: normal 1em sans-serif;
301 }
302 div.tab > fieldset.note > input.color + label { margin: 0; display: block; }
303 div.tab > fieldset.note > input.color[value="#888"]:checked ~ textarea { background-color: #AAA; }
304 div.tab > fieldset.note > input.color[value="#00A"]:checked ~ textarea { background-color: #88F; }
305 div.tab > fieldset.note > input.color[value="#0A0"]:checked ~ textarea { background-color: #8F8; }
306 div.tab > fieldset.note > input.color[value="#0AA"]:checked ~ textarea { background-color: #8FF; }
307 div.tab > fieldset.note > input.color[value="#A00"]:checked ~ textarea { background-color: #F88; }
308 div.tab > fieldset.note > input.color[value="#A0A"]:checked ~ textarea { background-color: #F8F; }
309 div.tab > fieldset.note > input.color[value="#AA0"]:checked ~ textarea { background-color: #FF8; }
310 div.tab > fieldset.note > input.color[value="#FFF"]:checked ~ textarea { background-color: #FFF; }
311
312 div.tab > button.delete {float: right; display: inline-block;}
313 EOF
314
315 # vi:set filetype=css: